Explorar el Código

fix:处方订单页面 table表增加小程序名称属性,增加所属小程序选择框查询

GHH hace 4 semanas
padre
commit
d25a98a977

+ 10 - 1
fs-common/src/main/java/com/fs/common/core/domain/entity/SysRole.java

@@ -61,12 +61,21 @@ public class SysRole extends BaseEntity
 
     /** 是否可以查看手机全号 0否 1是 */
     private Integer isCheckPhone;
-
+    /** 是否可以查看地址全号 0否 1是 */
+    private Integer isCheckAddress;
     public SysRole()
     {
 
     }
 
+    public Integer getIsCheckAddress() {
+        return isCheckAddress;
+    }
+
+    public void setIsCheckAddress(Integer isCheckAddress) {
+        this.isCheckAddress = isCheckAddress;
+    }
+
     public SysRole(Long roleId)
     {
         this.roleId = roleId;

+ 9 - 1
fs-service/src/main/java/com/fs/his/mapper/FsStoreOrderMapper.java

@@ -660,7 +660,7 @@ public interface FsStoreOrderMapper
     List<FsStoreOrder> selectStoreOrderIdByFollow();
 
     @Select({"<script> " +
-            "select so.*,u.nick_name,u.phone,p.patient_name ,TIMESTAMPDIFF(YEAR, pat.birthday, CURDATE()) AS age,pat.sex ,p.prescribe_code,d.doctor_name,pat.relation,CONCAT(u.nick_name, '(',  LEFT(u.phone, 3),  '****',  RIGHT(u.phone, 4),  ')') AS `user`, c.company_name ,cu.nick_name as company_user_nick_name ,cts.name as schedule_name,st.store_name " +
+            "select so.*,u.nick_name,u.phone,p.patient_name ,TIMESTAMPDIFF(YEAR, pat.birthday, CURDATE()) AS age,pat.sex ,p.prescribe_code,d.doctor_name,pat.relation,CONCAT(u.nick_name, '(',  LEFT(u.phone, 3),  '****',  RIGHT(u.phone, 4),  ')') AS `user`, c.company_name ,cu.nick_name as company_user_nick_name ,cts.name as schedule_name,st.store_name , csc.name miniProgramName" +
             " from fs_store_order so  " +
             " LEFT JOIN fs_store st ON so.store_id =st.store_id" +
             " left join fs_user u on so.user_id=u.user_id  " +
@@ -670,9 +670,17 @@ public interface FsStoreOrderMapper
             " left join company_user cu on cu.user_id=so.company_user_id " +
             " left join company_tcm_schedule cts on cts.id = so.schedule_id " +
             " left join fs_patient pat on pat.patient_id = p.patient_id " +
+            "LEFT JOIN (\n" +
+            "        SELECT\n" +
+            "        sp.*,\n" +
+            "        ROW_NUMBER() OVER (PARTITION BY sp.pay_code ORDER BY sp.create_time DESC) as rn\n" +
+            "        FROM fs_store_payment sp\n" +
+            "        ) sp_latest ON sp_latest.business_code = so.order_code AND sp_latest.rn = 1\n" +
+            "        LEFT JOIN fs_course_play_source_config csc ON csc.appid = sp_latest.app_id" +
             " WHERE so.is_del=0 "+
             "            <if test=\"maps.packageSecondName != null and maps.packageSecondName != '' \"> and so.package_second_name like concat('%', #{maps.packageSecondName}, '%')</if>"+
             "            <if test=\"maps.storeId != null \"> and so.store_id = #{maps.storeId}</if>\n" +
+            "            <if test=\"maps.coursePlaySourceConfigId != null\"> and csc.id = #{maps.coursePlaySourceConfigId}</if>" +
             "            <if test=\"maps.source != null \"> and so.source = #{maps.source}</if>\n" +
             "            <if test=\"maps.orderCode != null  and maps.orderCode != ''\"> and so.order_code = #{maps.orderCode}</if>\n" +
             "            <if test=\"maps.prescribeCode != null  and maps.prescribeCode != ''\"> and p.prescribe_code = #{maps.prescribeCode}</if>\n" +

+ 2 - 0
fs-service/src/main/java/com/fs/his/param/FsStoreOrderParam.java

@@ -244,6 +244,8 @@ public class FsStoreOrderParam extends BaseEntity implements Serializable {
     //erp电话
     private String erpPhoneNumber;
 
+    //小程序id
+    private Long coursePlaySourceConfigId;
     //erp账户
     private String erpAccount;
 }

+ 3 - 1
fs-service/src/main/java/com/fs/his/vo/FsStoreOrderExportVO.java

@@ -222,7 +222,9 @@ public class FsStoreOrderExportVO implements Serializable
     private String age;
     @Excel(name = "性别", dictType = "sys_patient_sex")
     private String sex;
-
+    //小程序名称
+    @Excel(name = "小程序名称")
+    private String miniProgramName;
     @Excel(name = "订单来源" , dictType = "sys_order_source")
     private Integer source;
 }

+ 2 - 1
fs-service/src/main/java/com/fs/his/vo/FsStoreOrderListVO.java

@@ -53,7 +53,8 @@ public class FsStoreOrderListVO {
     private String orderPackageName;
 
     private String packageSecondName;
-
+    //小程序名称
+    private String miniProgramName;
     //收货人
     private String userName;
 

+ 34 - 3
fs-service/src/main/resources/mapper/his/FsStoreOrderMapper.xml

@@ -710,13 +710,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
     <select id="selectFsStoreOrderListVO" resultType="com.fs.his.vo.FsStoreOrderListVO">
         select so.*,st.store_name,us.nick_name,us.phone,d.doctor_name,p.patient_name,p.prescribe_code,c.company_name,
-               cu.nick_name company_user_name
+               cu.nick_name company_user_name , csc.name miniProgramName
         FROM fs_store_order so LEFT JOIN fs_store st ON so.store_id =st.store_id
         LEFT JOIN fs_user us ON us.user_id=so.user_id
         LEFT JOIN fs_prescribe p ON p.prescribe_id =so.prescribe_id
         LEFT JOIN fs_doctor d ON so.doctor_id= d.doctor_id
         LEFT JOIN company c on c.company_id =so.company_id
         LEFT JOIN company_user cu on cu.user_id=so.company_user_id
+        LEFT JOIN (
+        SELECT
+        sp.*,
+        ROW_NUMBER() OVER (PARTITION BY sp.pay_code ORDER BY sp.create_time DESC) as rn
+        FROM fs_store_payment sp
+        ) sp_latest ON sp_latest.business_code = so.order_code AND sp_latest.rn = 1
+        LEFT JOIN fs_course_play_source_config csc ON csc.appid = sp_latest.app_id
         <where>
             <if test="maps.packageSecondName != null and maps.packageSecondName != ''">
                 and so.package_second_name like concat('%', #{maps.packageSecondName}, '%')
@@ -724,6 +731,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="maps.storeId != null">
                 and so.store_id = #{maps.storeId}
             </if>
+            <if test="maps.coursePlaySourceConfigId != null">
+                and csc.id = #{maps.coursePlaySourceConfigId}
+            </if>
             <if test="maps.orderCodes != null  and maps.orderCodes.size > 0">
                 and so.order_code in
                 <foreach collection="maps.orderCodes" item="orderCode" open="(" close=")" separator=",">
@@ -917,7 +927,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
     <select id="selectFsStoreOrderListVOByErpAccount" resultType="com.fs.his.vo.FsStoreOrderListVO">
         select so.*,st.store_name,us.nick_name,us.phone,d.doctor_name,p.patient_name,p.prescribe_code,c.company_name,
-        cu.nick_name company_user_name
+        cu.nick_name company_user_name , csc.name miniProgramName
         FROM fs_store_order so LEFT JOIN fs_store st ON so.store_id =st.store_id
         LEFT JOIN fs_user us ON us.user_id=so.user_id
         LEFT JOIN fs_prescribe p ON p.prescribe_id =so.prescribe_id
@@ -925,6 +935,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         LEFT JOIN company c on c.company_id =so.company_id
         LEFT JOIN company_user cu on cu.user_id=so.company_user_id
         LEFT JOIN fs_store_order_df df on df.order_id=so.order_id
+        LEFT JOIN (
+        SELECT
+        sp.*,
+        ROW_NUMBER() OVER (PARTITION BY sp.pay_code ORDER BY sp.create_time DESC) as rn
+        FROM fs_store_payment sp
+        ) sp_latest ON sp_latest.business_code = so.order_code AND sp_latest.rn = 1
+        LEFT JOIN fs_course_play_source_config csc ON csc.appid = sp_latest.app_id
         <where>
             <if test="maps.packageSecondName != null and maps.packageSecondName != ''">
                 and so.package_second_name like concat('%', #{maps.packageSecondName}, '%')
@@ -932,6 +949,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="maps.storeId != null">
                 and so.store_id = #{maps.storeId}
             </if>
+            <if test="maps.coursePlaySourceConfigId != null">
+                and csc.id = #{maps.coursePlaySourceConfigId}
+            </if>
             <if test="maps.orderCodes != null  and maps.orderCodes.size > 0">
                 and so.order_code in
                 <foreach collection="maps.orderCodes" item="orderCode" open="(" close=")" separator=",">
@@ -1354,7 +1374,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         c.company_name,
         cu.nick_name AS company_user_nick_name,
         cts.name AS schedule_name,
-        st.store_name,df.login_account as erp_account
+        st.store_name,df.login_account as erp_account,
+        csc.name miniProgramName
         FROM fs_store_order so
         LEFT JOIN fs_store st ON so.store_id = st.store_id
         LEFT JOIN fs_user u ON so.user_id = u.user_id
@@ -1365,12 +1386,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         LEFT JOIN company_tcm_schedule cts ON cts.id = so.schedule_id
         LEFT JOIN fs_patient pat ON pat.patient_id = p.patient_id
         LEFT JOIN fs_store_order_df df on df.order_id=so.order_id
+        LEFT JOIN (
+        SELECT
+        sp.*,
+        ROW_NUMBER() OVER (PARTITION BY sp.pay_code ORDER BY sp.create_time DESC) as rn
+        FROM fs_store_payment sp
+        ) sp_latest ON sp_latest.business_code = so.order_code AND sp_latest.rn = 1
+        LEFT JOIN fs_course_play_source_config csc ON csc.appid = sp_latest.app_id
         WHERE so.is_del = 0
 
         <!-- 动态条件 -->
         <if test="maps.packageSecondName != null and maps.packageSecondName != ''">
             AND so.package_second_name LIKE CONCAT('%', #{maps.packageSecondName}, '%')
         </if>
+        <if test="maps.coursePlaySourceConfigId != null">
+            and csc.id = #{maps.coursePlaySourceConfigId}
+        </if>
         <if test="maps.storeId != null">
             AND so.store_id = #{maps.storeId}
         </if>

+ 5 - 1
fs-service/src/main/resources/mapper/system/SysRoleMapper.xml

@@ -20,11 +20,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="updateTime"         column="update_time"           />
 		<result property="remark"             column="remark"                />
 		<result property="isCheckPhone"       column="is_check_phone"                />
+		<result property="isCheckAddress"     column="is_check_address"                />
 	</resultMap>
 
 	<sql id="selectRoleVo">
 	    select distinct r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.menu_check_strictly, r.dept_check_strictly,
-            r.status, r.del_flag, r.create_time, r.remark,r.is_check_phone
+            r.status, r.del_flag, r.create_time, r.remark,r.is_check_phone,r.is_check_address
         from sys_role r
 	        left join sys_user_role ur on ur.role_id = r.role_id
 	        left join sys_user u on u.user_id = ur.user_id
@@ -116,6 +117,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="remark != null and remark != ''">remark,</if>
  			<if test="createBy != null and createBy != ''">create_by,</if>
  			<if test="isCheckPhone != null">is_check_phone,</if>
+		    <if test="isCheckAddress != null">is_check_address,</if>
  			create_time
  		)values(
  			<if test="roleId != null and roleId != 0">#{roleId},</if>
@@ -129,6 +131,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="remark != null and remark != ''">#{remark},</if>
  			<if test="createBy != null and createBy != ''">#{createBy},</if>
  			<if test="isCheckPhone != null">#{isCheckPhone},</if>
+		   <if test="isCheckAddress != null">#{isCheckAddress},</if>
  			sysdate()
  		)
 	</insert>
@@ -146,6 +149,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="remark != null">remark = #{remark},</if>
  			<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
  			<if test="isCheckPhone != null">is_check_phone = #{isCheckPhone},</if>
+ 		    <if test="isCheckAddress != null">is_check_address = #{isCheckAddress},</if>
  			update_time = sysdate()
  		</set>
  		where role_id = #{roleId}