Initial commit: MSH System\n\n- msh_single_uniapp: Vue 2 + UniApp 前端(微信小程序/H5/App/支付宝小程序)\n- msh_crmeb_22: Spring Boot 2.2 后端(C端API/管理端/业务逻辑)\n- models-integration: AI服务集成(Coze/KieAI/腾讯ASR)\n- docs: 产品文档与设计稿

This commit is contained in:
2026-02-28 05:40:21 +08:00
commit 14d29d51c0
2182 changed files with 482509 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zbkj.service.dao.UserAddressDao">
</mapper>

View File

@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zbkj.service.dao.UserBillDao">
<select id="getListAdminAndIntegeal" resultType="com.zbkj.common.response.UserBillResponse" parameterType="map">
SELECT ub.id,ub.link_id AS linkId,ub.pm,ub.title,ub.category,ub.type,ub.number,ub.balance,ub.mark,ub.status,ub.create_time AS createTime,ub.update_time AS updateTime,u.nickname,ub.uid FROM eb_user_bill ub
LEFT JOIN eb_user u ON ub.uid = u.uid
where 1 = 1
<if test="keywords != '' and keywords != null ">
and ( ub.id like #{keywords} or ub.uid like #{keywords} or ub.link_id like #{keywords, jdbcType=VARCHAR} or ub.title like #{keywords, jdbcType=VARCHAR} or u.nickname like #{keywords, jdbcType=VARCHAR})
</if>
<if test="type != '' and type != null">
and ub.type = #{type, jdbcType=VARCHAR}
</if>
<if test="category != '' and category != null">
and ub.category = #{category, jdbcType=VARCHAR}
</if>
<if test="userIdList != null">
and ub.uid in
<foreach collection="userIdList" item="userIdList" index="index" open="(" separator="," close=")">
#{userIdList}
</foreach>
</if>
<if test="startTime != '' and endTime != '' and startTime != null and endTime != null">
and (ub.create_time between #{startTime} and #{endTime})
</if>
ORDER BY ub.id DESC,ub.create_time DESC
</select>
<select id="fundMonitoring" resultType="com.zbkj.common.response.UserBillResponse" parameterType="map">
SELECT ub.id,ub.link_id AS linkId,ub.pm,ub.title,ub.category,ub.type,ub.number,ub.balance,ub.mark,ub.status,ub.create_time AS createTime,ub.update_time AS updateTime,u.nickname,ub.uid FROM eb_user_bill ub
LEFT JOIN eb_user u ON ub.uid = u.uid
where ub.category = 'now_money'
<if test="keywords != '' and keywords != null ">
and ( ub.uid like #{keywords} or u.nickname like #{keywords, jdbcType=VARCHAR})
</if>
<if test="title != '' and title != null">
and ub.title = #{title, jdbcType=VARCHAR}
</if>
<if test="startTime != '' and endTime != '' and startTime != null and endTime != null">
and (ub.create_time between #{startTime} and #{endTime})
</if>
ORDER BY ub.id DESC,ub.create_time DESC
</select>
</mapper>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zbkj.service.dao.UserBrokerageRecordDao">
</mapper>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zbkj.service.dao.UserExperienceRecordDao">
</mapper>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zbkj.service.dao.UserGroupDao">
</mapper>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zbkj.service.dao.UserIntegralRecordDao">
</mapper>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zbkj.service.dao.UserLevelDao">
</mapper>

View File

@@ -0,0 +1,89 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zbkj.service.dao.UserDao">
<select id="getSpreadPeopleList" resultType="com.zbkj.common.response.UserSpreadPeopleItemResponse" parameterType="map">
SELECT u.uid,u.nickname, u.avatar, DATE_FORMAT(u.spread_time, '%Y-%m-%d %H:%i:%s') AS `time`, u.spread_count AS childCount,
(SELECT count( * ) AS num FROM eb_store_order AS o RIGHT JOIN eb_user_brokerage_record AS br ON br.link_id = o.order_id AND br.STATUS = 3
WHERE o.uid = u.uid AND br.uid = u.spread_uid AND o.STATUS > 1) AS orderCount,
(SELECT IFNULL( sum( o.pay_price ), 0 ) AS price FROM eb_store_order AS o RIGHT JOIN eb_user_brokerage_record AS br ON br.link_id = o.order_id AND br.STATUS = 3
WHERE o.uid = u.uid AND br.uid = u.spread_uid AND o.STATUS > 1) AS numberCount
FROM eb_user AS u
where
u.uid in (#{userIdList})
<if test="keywords != '' and keywords != null ">
and ( u.real_name like CONCAT('%',#{keywords},'%') or u.nickname like CONCAT('%',#{keywords},'%'))
</if>
ORDER BY #{sortKey} #{sortValue}
</select>
<select id="findAdminList" resultType="com.zbkj.common.model.user.User" parameterType="Map">
SELECT u.* FROM eb_user AS u
<if test='userType != null and userType != "" and userType == "wechat"'>
INNER JOIN eb_user_token AS ut on u.uid = ut.uid and ut.type = 1
</if>
<if test='userType != null and userType != "" and userType == "routine"'>
INNER JOIN eb_user_token AS ut on u.uid = ut.uid and ut.type = 2
</if>
where 1 = 1
<if test="isPromoter != null and isPromoter !='' or isPromoter == 0 ">
and u.is_promoter = #{isPromoter}
</if>
<if test="groupId != null and groupId !='' ">
and u.group_id in
<foreach item="group_id" collection="groupIdList" open="(" separator="," close=")">
#{group_id}
</foreach>
</if>
<if test="tagIdSql != null and tagIdSql !='' ">
and #{tagIdSql}
</if>
<if test="level != null and level !='' ">
and u.level in
<foreach item="level" collection="levelList" open="(" separator="," close=")">
#{level}
</foreach>
</if>
<if test="sex != null and sex !='' or sex == 0">
and u.sex = #{sex}
</if>
<if test="country != null and country !='' ">
and u.country = #{country}
</if>
<if test="addres != null and addres !='' ">
and u.addres like CONCAT('%',#{addres},'%')
</if>
<if test="payCount != null and payCount !='' or payCount == 0 ">
<if test="payCount &lt;= 0">
and u.pay_count = 0
</if>
<if test="payCount > 0">
and u.pay_count >= ${payCount}
</if>
</if>
<if test="status != null and status !='' or status == 0 ">
and u.`status` = ${status}
</if>
<if test="startTime != null and startTime != '' and accessType != null and accessType != ''">
<choose>
<when test="accessType == 1">
and create_time between #{startTime} and #{endTime}
and create_time = last_login_time
</when>
<when test="accessType == 2">
and last_login_time between #{startTime} and #{endTime}
</when>
<when test="accessType == 3">
and last_login_time not between #{startTime} and #{endTime}
</when>
<otherwise>
and last_login_time between #{startTime} and #{endTime}
</otherwise>
</choose>
</if>
<if test="keywords != '' and keywords != null ">
and ( u.phone like CONCAT('%',#{keywords},'%') or u.nickname like CONCAT('%',#{keywords},'%') or u.mark like CONCAT('%',#{keywords},'%'))
</if>
ORDER BY u.uid desc
</select>
</mapper>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zbkj.service.dao.UserSignDao">
</mapper>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zbkj.service.dao.UserTagDao">
</mapper>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zbkj.service.dao.UserTokenDao">
</mapper>