Browse Source

foreach中变量用#可以转义。

tomatozq 5 years ago
parent
commit
2ea6811e7e

+ 25 - 11
picc-admin-server/src/main/java/com/jpsoft/picc/modules/base/controller/CompanyController.java

@@ -297,12 +297,21 @@ public class CompanyController {
 
         try {
             //todo 先根据用户名、真实姓名、电话查询云平台
-            List<JpCloudUser> jpCloudUserList = jpCloudUserService.findUser(userName,name,phone);
-
             List<String> promotionList = new ArrayList<>();
 
-            for (JpCloudUser jpCloudUser:jpCloudUserList) {
-                promotionList.add(jpCloudUser.getName());
+            if(StringUtils.isNotEmpty(userName) || StringUtils.isNotEmpty(name) || StringUtils.isNotEmpty(phone)) {
+                List<JpCloudUser> jpCloudUserList = jpCloudUserService.findUser(userName, name, phone);
+
+                if(jpCloudUserList!=null){
+                    for (JpCloudUser jpCloudUser : jpCloudUserList) {
+                        promotionList.add(jpCloudUser.getName());
+                    }
+                }
+
+                if (promotionList.size()==0){
+                    //查询为空
+                    promotionList.add("null"); //不存在的用户名以便查询结果为0
+                }
             }
 
             Map<String,Object> searchParams = new HashMap<>();
@@ -334,15 +343,20 @@ public class CompanyController {
             //todo 一次性读取本页推广人信息
             List<JpCloudUser> jpCloudUsers = jpCloudUserService.findUserByNames(userNames);
 
-            Map<String,JpCloudUser> userMap = new HashMap<>();
+            if(jpCloudUsers!=null) {
+                Map<String, JpCloudUser> userMap = new HashMap<>();
 
-            for (JpCloudUser jpCloudUser : jpCloudUsers) {
-                userMap.put(jpCloudUser.getName(),jpCloudUser);
-            }
+                for (JpCloudUser jpCloudUser : jpCloudUsers) {
+                    userMap.put(jpCloudUser.getName(), jpCloudUser);
+                }
 
-            for (Company company: page) {
-                if (StringUtils.isNotEmpty(company.getPromoter())) {
-                    company.setJpCloudUser(userMap.get(company.getPromoter()));
+                for (Company company : page) {
+                    if (StringUtils.isNotEmpty(company.getPromoter())) {
+                        company.setJpCloudUser(userMap.get(company.getPromoter()));
+                    }
+                    else{
+                        company.setJpCloudUser(new JpCloudUser()); //以免前台做是否为空判断
+                    }
                 }
             }
 

+ 8 - 5
picc-common/src/main/resources/mapper/base/Company.xml

@@ -166,8 +166,7 @@
 	where id_=#{id}
 	</update>
 	<select id="get" parameterType="string" resultMap="CompanyMap">
-		select 
-id_,name_,legal_name,legal_card,legal_card_file,uscc_code,uscc_files,type_,business_nature,business_scope,industry_type,employees_number,insured_number,person_,tel_,mail_,postal_,address_,company_stamp_file,promoter_,remark_,buy_id,status_,create_by,create_time,update_by,update_time,del_flag		from base_company where id_=#{0}
+		select * from base_company where id_=#{0}
 	</select>
 	<select id="exist" parameterType="string" resultType="int">
 		select count(*) from base_company where id_=#{0}
@@ -201,9 +200,13 @@ id_,name_,legal_name,legal_card,legal_card_file,uscc_code,uscc_files,type_,busin
 				and create_time < str_to_date( #{searchParams.endTime},'%Y-%m-%d')
 			]]>
 		</if>
-		<foreach item="item" collection="searchParams.promotionList"  open="and promoter_ in(" separator="," close=")">
-			${item}
-		</foreach>
+
+		<if test="searchParams.promotionList != null">
+			and promoter_ in <foreach item="item" collection="searchParams.promotionList"  open="(" separator="," close=")">
+				#{item}
+			</foreach>
+		</if>
+
 		<if test="searchParams.hasPromotion != null">
 			<![CDATA[
 				and ifnull(promoter_,'')<>''

+ 1 - 1
picc-common/src/main/resources/mapper/business/InsuranceApplication.xml

@@ -268,7 +268,7 @@
             and del_flag = 0
         ]]>
         <foreach item="item" collection="status" open=" and status_ in(" separator="," close=")">
-            ${item}
+            #{item}
         </foreach>
         order by create_time asc
     </select>

+ 1 - 1
picc-common/src/main/resources/mapper/business/InsurancePolicy.xml

@@ -256,7 +256,7 @@
         and a.start_time=#{startTime}
         and d.end_time = #{endTime}
         <foreach item="item" collection="status" open=" and status_ in(" separator="," close=")">
-            ${item}
+            #{item}
         </foreach>
         order by a.create_time asc
     </select>