Commit 12c94131 by yukang

Merge remote-tracking branch 'origin/dev' into dev

parents fbbc36a5 91f600bf
......@@ -140,8 +140,14 @@ public enum DdynamicEnum {
* 用途:项目档案下拉框
* 编写:wwl
*/
ORG_RECORD_BLOCK_ID("org_record_block_id","orgId","orgCname","HPXSOrg.queryComboBox");
ORG_RECORD_BLOCK_ID("org_record_block_id","orgId","orgCname","HPXSOrg.queryComboBox"),
/**
* 模块:用户企业
* 用途:项目档案下拉框
* 编写:wwl
*/
COMPANY_RECORD_BLOCK_ID("company_record_block_id","companyCode","companyName","HPXSUser.queryCompanyComboBox");
/** 将结果集放入的块名 */
private final String blockId;
......
......@@ -29,7 +29,7 @@ public class UserSessionUtils extends UserSession {
*/
public static User getUser() {
EiInfo eiInfo = new EiInfo();
eiInfo.set("loginName", UserSession.getLoginName());
eiInfo.set("userId", UserSession.getUserId());
eiInfo.set(EiConstant.serviceName, "HPXSUser");
eiInfo.set(EiConstant.methodName, "getUser");
EiInfo outInfo = XLocalManager.call(eiInfo);
......
......@@ -131,9 +131,9 @@ public class ServiceHPKC001 extends ServiceBase {
// 入库单号
List<String> otherEnterNos = ObjectUtils.listKey(resultRows, "otherEnterNo");
// 锁记录
HPKCTools.lockKc001(otherEnterNos);
HPKCTools.HpKc001.lock(otherEnterNos);
// 查询数据库记录
Map<String, HPKC001> mapKc001 = HPKCTools.mapKc001(otherEnterNos);
Map<String, HPKC001> mapKc001 = HPKCTools.HpKc001.map(otherEnterNos);
for (int i = 0; i < resultRows.size(); i++) {
HPKC001 fKc001 = new HPKC001();
fKc001.fromMap(resultRows.get(i));
......@@ -199,9 +199,9 @@ public class ServiceHPKC001 extends ServiceBase {
// 入库单号
List<String> otherEnterNos = ObjectUtils.listKey(resultRows, "otherEnterNo");
// 锁记录
HPKCTools.lockKc001(otherEnterNos);
HPKCTools.HpKc001.lock(otherEnterNos);
// 查询数据库记录
Map<String, HPKC001> mapKc001 = HPKCTools.mapKc001(otherEnterNos);
Map<String, HPKC001> mapKc001 = HPKCTools.HpKc001.map(otherEnterNos);
for (int i = 0; i < resultRows.size(); i++) {
HPKC001 fKc001 = new HPKC001();
fKc001.fromMap(resultRows.get(i));
......
......@@ -89,9 +89,9 @@ public class ServiceHPKC002 extends ServiceBase {
// 销售单号
List<String> reqNos = ObjectUtils.listKey(resultRows, "reqNo");
// 锁记录
HPKCTools.lockKc002(reqNos);
HPKCTools.HpKc002.lock(reqNos);
// 查询数据库记录
Map<String, HPKC002> dbMapKc002 = HPKCTools.mapKc002(reqNos);
Map<String, HPKC002> dbMapKc002 = HPKCTools.HpKc002.map(reqNos);
for (int i = 0; i < resultRows.size(); i++) {
HPKC002 fKc002 = new HPKC002();
fKc002.fromMap(resultRows.get(i));
......
......@@ -162,9 +162,9 @@ public class ServiceHPKC005 extends ServiceBase {
// 盘点单号
List<String> checkNos = ObjectUtils.listKey(resultRows, "checkNo");
// 锁记录
HPKCTools.lockKc005(checkNos);
HPKCTools.HpKc005.lock(checkNos);
// 查询数据库记录
Map<String, HPKC005> mapKc005 = HPKCTools.mapKc005(checkNos);
Map<String, HPKC005> mapKc005 = HPKCTools.HpKc005.map(checkNos);
for (int i = 0; i < resultRows.size(); i++) {
HPKC005 fKc005 = new HPKC005();
fKc005.fromMap(resultRows.get(i));
......
......@@ -133,9 +133,9 @@ public class ServiceHPKC006 extends ServiceBase {
// 入库单号
List<String> otherEnterNos = ObjectUtils.listKey(resultRows, "otherEnterNo");
// 锁记录
HPKCTools.lockKc006(otherEnterNos);
HPKCTools.HpKc006.lock(otherEnterNos);
// 查询数据库记录
Map<String, HPKC006> mapKc006 = HPKCTools.mapKc006(otherEnterNos);
Map<String, HPKC006> mapKc006 = HPKCTools.HpKc006.map(otherEnterNos);
for (int i = 0; i < resultRows.size(); i++) {
HPKC006 fKc006 = new HPKC006();
fKc006.fromMap(resultRows.get(i));
......@@ -201,9 +201,9 @@ public class ServiceHPKC006 extends ServiceBase {
// 入库单号
List<String> otherEnterNos = ObjectUtils.listKey(resultRows, "otherEnterNo");
// 锁记录
HPKCTools.lockKc006(otherEnterNos);
HPKCTools.HpKc006.lock(otherEnterNos);
// 查询数据库记录
Map<String, HPKC006> mapKc006 = HPKCTools.mapKc006(otherEnterNos);
Map<String, HPKC006> mapKc006 = HPKCTools.HpKc006.map(otherEnterNos);
for (int i = 0; i < resultRows.size(); i++) {
HPKC006 fKc006 = new HPKC006();
fKc006.fromMap(resultRows.get(i));
......
......@@ -23,91 +23,110 @@ import java.util.stream.Collectors;
public class HPKCTools {
/**
*
* HPKC001公共DAO定义
*
* @param otherEnterNos
* @return
* @author:songx
* @date:2024/2/1,9:09
*/
public static void lockKc001(List<String> otherEnterNos) {
if (CollectionUtils.isEmpty(otherEnterNos)) {
return;
public static class HpKc001 {
/**
* 锁
*
* @param otherEnterNos
* @return
*/
public static void lock(List<String> otherEnterNos) {
if (CollectionUtils.isEmpty(otherEnterNos)) {
return;
}
Map queryMap = new HashMap();
queryMap.put("otherEnterNos", otherEnterNos);
DaoBase.getInstance().update(HPSqlConstant.HPKC001.LOCK, queryMap);
}
Map queryMap = new HashMap();
queryMap.put("otherEnterNos", otherEnterNos);
DaoBase.getInstance().update(HPSqlConstant.HPKC001.LOCK, queryMap);
}
/**
* 查询其他入库信息
*
* @param otherEnterNos
* @return
*/
public static List<HPKC001> listKc001(List<String> otherEnterNos) {
if (CollectionUtils.isEmpty(otherEnterNos)) {
return null;
/**
* 查询其他入库信息
*
* @param otherEnterNos
* @return
*/
public static List<HPKC001> list(List<String> otherEnterNos) {
if (CollectionUtils.isEmpty(otherEnterNos)) {
return null;
}
Map queryMap = new HashMap();
queryMap.put("otherEnterNos", otherEnterNos);
return DaoBase.getInstance().query(HPKC001.QUERY, queryMap);
}
Map queryMap = new HashMap();
queryMap.put("otherEnterNos", otherEnterNos);
return DaoBase.getInstance().query(HPKC001.QUERY, queryMap);
}
/**
* 查询其他入库信息
*
* @param otherEnterNos
* @return
*/
public static Map<String, HPKC001> mapKc001(List<String> otherEnterNos) {
List<HPKC001> results = listKc001(otherEnterNos);
if (CollectionUtils.isEmpty(results)) {
return null;
/**
* 查询其他入库信息
*
* @param otherEnterNos
* @return
*/
public static Map<String, HPKC001> map(List<String> otherEnterNos) {
List<HPKC001> results = list(otherEnterNos);
if (CollectionUtils.isEmpty(results)) {
return null;
}
return results.stream().collect(Collectors.toMap(HPKC001::getPurchaseNo, item -> item));
}
return results.stream().collect(Collectors.toMap(HPKC001::getPurchaseNo, item -> item));
}
/**
*
* HPKC002公共DAO定义
*
* @param reqNos
* @return
* @author:songx
* @date:2024/2/1,9:09
*/
public static void lockKc002(List<String> reqNos) {
if (CollectionUtils.isEmpty(reqNos)) {
return;
public static class HpKc002 {
/**
* 锁
*
* @param reqNos
* @return
*/
public static void lock(List<String> reqNos) {
if (CollectionUtils.isEmpty(reqNos)) {
return;
}
Map queryMap = new HashMap();
queryMap.put("reqNos", reqNos);
DaoBase.getInstance().update(HPSqlConstant.HPKC002.LOCK, queryMap);
}
Map queryMap = new HashMap();
queryMap.put("reqNos", reqNos);
DaoBase.getInstance().update(HPSqlConstant.HPKC002.LOCK, queryMap);
}
/**
* 查询生产领料信息
*
* @param reqNos
* @return
*/
public static List<HPKC002> listKc002(List<String> reqNos) {
if (CollectionUtils.isEmpty(reqNos)) {
return null;
/**
* 查询生产领料信息
*
* @param reqNos
* @return
*/
public static List<HPKC002> list(List<String> reqNos) {
if (CollectionUtils.isEmpty(reqNos)) {
return null;
}
Map queryMap = new HashMap();
queryMap.put("reqNos", reqNos);
return DaoBase.getInstance().query(HPKC002.QUERY, queryMap);
}
Map queryMap = new HashMap();
queryMap.put("reqNos", reqNos);
return DaoBase.getInstance().query(HPKC002.QUERY, queryMap);
}
/**
* 查询生产领料信息
*
* @param reqNos
* @return
*/
public static Map<String, HPKC002> mapKc002(List<String> reqNos) {
List<HPKC002> results = listKc002(reqNos);
if (CollectionUtils.isEmpty(results)) {
return null;
/**
* 查询生产领料信息
*
* @param reqNos
* @return
*/
public static Map<String, HPKC002> map(List<String> reqNos) {
List<HPKC002> results = list(reqNos);
if (CollectionUtils.isEmpty(results)) {
return null;
}
return results.stream().collect(Collectors.toMap(HPKC002::getReqNo, item -> item));
}
return results.stream().collect(Collectors.toMap(HPKC002::getReqNo, item -> item));
}
/**
......@@ -193,91 +212,111 @@ public class HPKCTools {
}
/**
*
* HPKC005公共DAO方法定义
*
* @param checkNos
* @return
* @author:songx
* @date:2024/1/31,16:36
*/
public static void lockKc005(List<String> checkNos) {
if (CollectionUtils.isEmpty(checkNos)) {
return;
public static class HpKc005 {
/**
* 锁
*
* @param checkNos
* @return
*/
public static void lock(List<String> checkNos) {
if (CollectionUtils.isEmpty(checkNos)) {
return;
}
Map queryMap = new HashMap();
queryMap.put("checkNos", checkNos);
DaoBase.getInstance().update(HPSqlConstant.HPKC005.LOCK, queryMap);
}
Map queryMap = new HashMap();
queryMap.put("checkNos", checkNos);
DaoBase.getInstance().update(HPSqlConstant.HPKC005.LOCK, queryMap);
}
/**
* 查询盘点单信息
*
* @param checkNos
* @return
*/
public static List<HPKC005> listKc005(List<String> checkNos) {
if (CollectionUtils.isEmpty(checkNos)) {
return null;
/**
* 查询盘点单信息
*
* @param checkNos
* @return
*/
public static List<HPKC005> list(List<String> checkNos) {
if (CollectionUtils.isEmpty(checkNos)) {
return null;
}
Map queryMap = new HashMap();
queryMap.put("checkNos", checkNos);
return DaoBase.getInstance().query(HPKC005.QUERY, queryMap);
}
Map queryMap = new HashMap();
queryMap.put("checkNos", checkNos);
return DaoBase.getInstance().query(HPKC005.QUERY, queryMap);
}
/**
* 查询盘点单信息
*
* @param checkNos
* @return
*/
public static Map<String, HPKC005> mapKc005(List<String> checkNos) {
List<HPKC005> results = listKc005(checkNos);
if (CollectionUtils.isEmpty(results)) {
return null;
/**
* 查询盘点单信息
*
* @param checkNos
* @return
*/
public static Map<String, HPKC005> map(List<String> checkNos) {
List<HPKC005> results = list(checkNos);
if (CollectionUtils.isEmpty(results)) {
return null;
}
return results.stream().collect(Collectors.toMap(HPKC005::getCheckNo, item -> item));
}
return results.stream().collect(Collectors.toMap(HPKC005::getCheckNo, item -> item));
}
/**
*
* HPKC006公共DAO方法定义
*
* @param otherEnterNos
* @return
* @author:songx
* @date:2024/2/1,9:15
*/
public static void lockKc006(List<String> otherEnterNos) {
if (CollectionUtils.isEmpty(otherEnterNos)) {
return;
public static class HpKc006 {
/**
* 锁
*
* @param otherEnterNos
* @return
*/
public static void lock(List<String> otherEnterNos) {
if (CollectionUtils.isEmpty(otherEnterNos)) {
return;
}
Map queryMap = new HashMap();
queryMap.put("otherEnterNos", otherEnterNos);
DaoBase.getInstance().update(HPSqlConstant.HPKC006.LOCK, queryMap);
}
Map queryMap = new HashMap();
queryMap.put("otherEnterNos", otherEnterNos);
DaoBase.getInstance().update(HPSqlConstant.HPKC006.LOCK, queryMap);
}
/**
* 查询其他入库信息
*
* @param otherEnterNos
* @return
*/
public static List<HPKC006> listKc006(List<String> otherEnterNos) {
if (CollectionUtils.isEmpty(otherEnterNos)) {
return null;
/**
* 查询其他入库信息
*
* @param otherEnterNos
* @return
*/
public static List<HPKC006> list(List<String> otherEnterNos) {
if (CollectionUtils.isEmpty(otherEnterNos)) {
return null;
}
Map queryMap = new HashMap();
queryMap.put("otherEnterNos", otherEnterNos);
return DaoBase.getInstance().query(HPKC006.QUERY, queryMap);
}
Map queryMap = new HashMap();
queryMap.put("otherEnterNos", otherEnterNos);
return DaoBase.getInstance().query(HPKC006.QUERY, queryMap);
}
/**
* 查询其他入库信息
*
* @param otherEnterNos
* @return
*/
public static Map<String, HPKC006> mapKc006(List<String> otherEnterNos) {
List<HPKC006> results = listKc006(otherEnterNos);
if (CollectionUtils.isEmpty(results)) {
return null;
/**
* 查询其他入库信息
*
* @param otherEnterNos
* @return
*/
public static Map<String, HPKC006> map(List<String> otherEnterNos) {
List<HPKC006> results = list(otherEnterNos);
if (CollectionUtils.isEmpty(results)) {
return null;
}
return results.stream().collect(Collectors.toMap(HPKC006::getOtherEnterNo, item -> item));
}
return results.stream().collect(Collectors.toMap(HPKC006::getOtherEnterNo, item -> item));
}
/**
......@@ -378,7 +417,6 @@ public class HPKCTools {
}
/**
* HPKC011公共DAO方法定义
*
......
package com.baosight.hpjx.hp.pz.service;
import com.baosight.hpjx.common.DdynamicEnum;
import com.baosight.hpjx.core.constant.CommonConstant;
import com.baosight.hpjx.core.dao.DaoUtils;
import com.baosight.hpjx.hp.constant.HPConstant;
import com.baosight.hpjx.hp.pz.domain.HPPZ009;
import com.baosight.hpjx.hp.xs.tools.HPXSUserTools;
import com.baosight.hpjx.util.AssertUtils;
import com.baosight.hpjx.util.CommonMethod;
import com.baosight.hpjx.util.DateUtils;
import com.baosight.hpjx.util.EiInfoUtils;
import com.baosight.hpjx.util.LogUtils;
import com.baosight.hpjx.util.RsaUtils;
import com.baosight.iplat4j.core.ei.EiConstant;
......@@ -18,6 +21,7 @@ import com.baosight.iplat4j.core.web.threadlocal.UserSession;
import com.baosight.iplat4j.ed.util.SequenceGenerator;
import com.baosight.xservices.xs.constants.LoginConstants;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -102,6 +106,7 @@ public class ServiceHPPZ009 extends ServiceBase {
HPPZ009 hppz009 = new HPPZ009();
hppz009.fromMap(resultRows.get(i));
AssertUtils.isEmpty(hppz009.getCompanyName(), "企业名称不能为空");
AssertUtils.isEmpty(hppz009.getLoginPrefix(), "登录前缀不能为空");
AssertUtils.isNull(hppz009.getValidFlag(), "是否启用不能为空");
}
}
......
......@@ -147,6 +147,9 @@
#status#, #spec#, #length#, #width#, #thick#, #material#, #coefficient#,
#unit#, #createdBy#, #createdName#, #createdTime#
)
<selectKey resultClass="long" keyProperty="id">
SELECT MAX(ID) AS "id" FROM ${hpjxSchema}.T_HPPZ006
</selectKey>
</insert>
<!-- 逻辑删除 -->
......
......@@ -2,28 +2,33 @@
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="HPPZ009">
<sql id="columns">
<sql id="column">
ID as "id",
COMPANY_CODE as "companyCode", <!-- 企业编码 -->
COMPANY_NAME as "companyName", <!-- 企业名称 -->
VALID_FLAG as "validFlag", <!-- 是否启用:1.启用,0.停用 -->
LOGIN_PREFIX as "loginPrefix", <!-- 登录前缀 -->
REMARK as "remark", <!-- 备注 -->
CREATED_BY as "createdBy", <!-- 创建人 -->
CREATED_NAME as "createdName", <!-- 创建人名称 -->
CREATED_TIME as "createdTime", <!-- 创建时间 -->
UPDATED_BY as "updatedBy", <!-- 更新人 -->
UPDATED_NAME as "updatedName", <!-- 更新人名称 -->
UPDATED_TIME as "updatedTime" <!-- 更新时间 -->
UPDATED_TIME as "updatedTime", <!-- 更新时间 -->
DELETE_FLAG as "deleteFlag" <!-- 是否删除:1.是,0.否 -->
</sql>
<sql id="conditions">
<sql id="condition">
AND DELETE_FLAG = 0
<isNotEmpty prepend=" AND " property="companyCode">
COMPANY_CODE = #companyCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="validFlag">
VALID_FLAG = #validFlag#
</isNotEmpty>
</sql>
<sql id="queryConditions">
<sql id="queryCondition">
<isNotEmpty prepend=" AND " property="companyName">
COMPANY_NAME LIKE CONCAT('%', #companyName#, '%')
</isNotEmpty>
......@@ -50,11 +55,11 @@
<!-- 查询品种大类配置 -->
<select id="query" resultClass="com.baosight.hpjx.hp.pz.domain.HPPZ009">
SELECT
<include refid="columns"/>
<include refid="column"/>
FROM ${hpjxSchema}.T_HPPZ009
WHERE 1=1
<include refid="conditions" />
<include refid="queryConditions"/>
<include refid="condition" />
<include refid="queryCondition"/>
<include refid="dynamic"/>
</select>
......@@ -63,8 +68,8 @@
SELECT COUNT(1)
FROM ${hpjxSchema}.T_HPPZ009
WHERE 1=1
<include refid="conditions" />
<include refid="queryConditions"/>
<include refid="condition" />
<include refid="queryCondition"/>
</select>
<insert id="insert">
......@@ -72,12 +77,13 @@
COMPANY_CODE, <!-- 企业编码 -->
COMPANY_NAME, <!-- 企业名称 -->
VALID_FLAG, <!-- 是否启用:1.启用,0.停用 -->
LOGIN_PREFIX, <!-- 登录前缀 -->
REMARK, <!-- 备注 -->
CREATED_BY, <!-- 创建人 -->
CREATED_NAME, <!-- 创建人名称 -->
CREATED_TIME <!-- 创建时间 -->
) VALUES (
#companyCode#, #companyName#, #validFlag#, #remark#, #createdBy#,
#companyCode#, #companyName#, #validFlag#, #loginPrefix#, #remark#, #createdBy#,
#createdName#, #createdTime#
)
</insert>
......
package com.baosight.hpjx.hp.xs.service;
import com.baosight.hpjx.common.DdynamicEnum;
import com.baosight.hpjx.hp.xs.domain.User;
import com.baosight.hpjx.util.CommonMethod;
import com.baosight.hpjx.util.EiInfoUtils;
import com.baosight.hpjx.util.LogUtils;
import com.baosight.hpjx.util.ObjectUtils;
import com.baosight.iplat4j.core.ei.EiInfo;
import com.baosight.iplat4j.core.service.impl.ServiceBase;
import org.apache.commons.lang.StringUtils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -27,10 +32,10 @@ public class ServiceHPXSUser extends ServiceBase {
int status = 0;
String msg = "";
try {
String loginName = eiInfo.getString("loginName");
if (StringUtils.isNotEmpty(loginName)) {
String userId = eiInfo.getString("userId");
if (StringUtils.isNotEmpty(userId)) {
Map map = new HashMap();
map.put("loginName", loginName);
map.put("userId", userId);
List<User> users = dao.query("HPXSUser.query", map);
if (users != null && users.size() > 0) {
status = 1;
......@@ -50,4 +55,25 @@ public class ServiceHPXSUser extends ServiceBase {
return outInfo;
}
/**
* 查询用户的一页下拉框
*
* @param inInfo
* @return
*/
public EiInfo queryCompanyComboBox(EiInfo inInfo) {
try {
Map queryMap = EiInfoUtils.getFirstRow(inInfo);
if (ObjectUtils.isNullBlank(queryMap.get("loginName"))) {
return inInfo;
}
List<DdynamicEnum> list = new ArrayList<>();
list.add(DdynamicEnum.COMPANY_RECORD_BLOCK_ID);
CommonMethod.initBlock(inInfo, list, queryMap, false);
} catch (Exception e) {
LogUtils.setMsg(inInfo, e, "查询企业失败");
}
return inInfo;
}
}
......@@ -37,14 +37,25 @@
<!-- 查询用户信息 -->
<select id="queryComboBox" parameterClass="java.util.HashMap" resultClass="java.util.HashMap">
SELECT
LOGIN_NAME as "loginName", <!-- 登录id -->
USER_NAME as "userName" <!-- 用户名 -->
LOGIN_NAME as "loginName", <!-- 登录id -->
USER_NAME as "userName" <!-- 用户名 -->
FROM ${platSchema}.XS_USER
WHERE 1=1
AND LOGIN_NAME != 'admin'
<include refid="condition"/>
</select>
<!-- 查询用户企业 -->
<select id="queryCompanyComboBox" parameterClass="java.util.HashMap" resultClass="java.util.HashMap">
SELECT
A.COMPANY_CODE as "companyCode", <!-- 企业编码 -->
B.COMPANY_NAME as "companyName" <!-- 企业名称 -->
FROM ${platSchema}.XS_USER A, ${hpjxSchema}.T_HPPZ009 B
WHERE 1=1
AND A.COMPANY_CODE = B.COMPANY_CODE
AND A.LOGIN_NAME = #loginName#
</select>
<!-- 统计用户 -->
<select id="count" resultClass="int">
SELECT COUNT(1)
......
......@@ -60,9 +60,11 @@ public class SecurityUserStandardImpl extends ServiceEPBase implements ISecurity
int status = -1;
String msg = "";
if (eiInfo.get("loginName") != null && eiInfo.get("password") != null) {
String loginName = eiInfo.get("loginName").toString();
String password = eiInfo.get("password").toString();
String companyCode = eiInfo.getString("companyCode");
String loginName = eiInfo.getString("loginName");
String password = eiInfo.getString("password");
Map map = new HashMap();
map.put("companyCode", companyCode);
map.put("loginName", loginName);
List user = dao.query("XSUser.queryForLogin", map);
String hashedPassword;
......@@ -125,8 +127,8 @@ public class SecurityUserStandardImpl extends ServiceEPBase implements ISecurity
msg = msgSb.toString();
} else if (!"-1".equals(userMap.get("isLocked")) && !"-1".equals(userMap.get("status"))) {
// 登录校验增加企业是否启用 modify by songx at 2024-01-16
String companyCode = (String) userMap.get("companyCode");
if (StringUtils.isBlank(companyCode) || HPPZTools.isValid(companyCode)) {
String dbCompanyCode = (String) userMap.get("companyCode");
if (StringUtils.isBlank(dbCompanyCode) || HPPZTools.isValid(dbCompanyCode)) {
String pwdExpireDateString = (String) userMap.get("pwdExpireDate");
String accountExpireDateString = (String) userMap.get("accountExpireDate");
String nowDateString = DateUtils.curDateStr8();
......@@ -263,12 +265,13 @@ public class SecurityUserStandardImpl extends ServiceEPBase implements ISecurity
Map resultObject = null;
int status = 0;
String msg = "";
String companyCode = eiInfo.getString("companyCode");
String loginName = eiInfo.getString("loginName");
try {
if (StringUtils.isNotEmpty(loginName)) {
Map map = new HashMap();
map.put("loginName", loginName);
map.put("companyCode", companyCode);
List user = dao.query("XSUser.query", map);
if (user != null && user.size() > 0) {
status = 1;
......
package com.baosight.xservices.xs.service;
import com.baosight.hpjx.core.security.UserSessionUtils;
import com.baosight.hpjx.hp.pz.domain.HPPZ009;
import com.baosight.hpjx.hp.pz.tools.HPPZTools;
import com.baosight.hpjx.util.LogUtils;
import com.baosight.iplat4j.core.cache.CacheManager;
import com.baosight.iplat4j.core.ei.EiBlock;
import com.baosight.iplat4j.core.ei.EiConstant;
import com.baosight.iplat4j.core.ei.EiInfo;
import com.baosight.iplat4j.core.exception.PlatException;
import com.baosight.iplat4j.core.log.Logger;
import com.baosight.iplat4j.core.log.LoggerFactory;
import com.baosight.iplat4j.core.service.impl.ServiceEPBase;
......
......@@ -57,6 +57,9 @@
<isNotEmpty prepend=" AND " property="userType">
USER_TYPE = #userType#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="companyCode">
COMPANY_CODE = #companyCode#
</isNotEmpty>
<dynamic prepend="ORDER BY">
<isNotEmpty property="orderBy">
$orderBy$
......@@ -114,6 +117,9 @@
<isNotEmpty prepend=" AND " property="userType">
user_type like ('%$userType$%')
</isNotEmpty>
<isNotEmpty prepend=" AND " property="companyCode">
company_code = #companyCode#
</isNotEmpty>
<dynamic prepend="ORDER BY">
<isNotEmpty property="orderBy">
$orderBy$
......
......@@ -18,6 +18,7 @@
<EF:EFColumn ename="id" cname="主键" hidden="true"/>
<EF:EFColumn cname="企业编码" ename="companyCode" enable="false" width="120" align="center"/>
<EF:EFColumn cname="企业名称" ename="companyName" width="140" required="true"/>
<EF:EFColumn cname="登录前缀" ename="loginPrefix" width="100" align="center" readonly="true"/>
<EF:EFComboColumn cname="是否启用" ename="validFlag" width="80" align="center" required="true">
<EF:EFCodeOption codeName="hpjx.hppz.validFlag"/>
</EF:EFComboColumn>
......
<%@ page import="com.baosight.iplat4j.core.ioc.spring.PlatApplicationContext" %>
<%@ page import="com.baosight.xservices.xs.constants.LoginConstants" %>
<%@ page import="org.apache.commons.lang.StringUtils" %>
<%@ page import="com.baosight.hpjx.hp.pz.tools.HPPZTools" %>
<%@ page import="com.baosight.hpjx.core.security.UserSessionUtils" %>
<!DOCTYPE html>
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
......@@ -99,12 +101,14 @@
String passwordDesc = StringUtils.defaultIfEmpty(PlatApplicationContext.getProperty("xservices.security.checkpassword.desc"), "密码必须包含英文及数字");
String loginPublicKey = LoginConstants.loginRsaPublicKey;
String cryptoPasswordEnable = LoginConstants.cryptoPasswordEnable;
String companyCode = UserSessionUtils.getCompanyCode();
String loginPrefix = StringUtils.isBlank(companyCode) ? "" : HPPZTools.getPz009(companyCode).getLoginPrefix();
%>
<c:set var="pwdRgx" value="<%=passwordRegex%>"/>
<c:set var="pwdDesc" value="<%=passwordDesc%>"/>
<c:set var="login_PublicKey" value="<%=loginPublicKey%>"/>
<c:set var="crypto_PasswordEnable" value="<%=cryptoPasswordEnable%>"/>
<c:set var="loginPrefix" value="<%=loginPrefix%>"/>
<EF:EFPage>
<script>
var ctx = "${ctx}";
......@@ -343,9 +347,11 @@
</div>
<div class="col-xs-3">
<EF:EFInput cname="登录账号" ename="details-0-loginName"
data-regex="/^[_a-zA-Z0-9]{1,64}$/" value=""
data-regex="/^[_a-zA-Z0-9]{1,64}$/"
data-errorPrompt="对不起,登录账号只能是不超过64位的英文字母或者数字字符或下划线"
validateGroupName="group1" required="required" inline="true"/>
validateGroupName="group1" required="required" inline="true"
value="${loginPrefix}"
oninput="this.value='${loginPrefix}' + this.value.slice(this.value.indexOf('${loginPrefix}')+('${loginPrefix}'.length));"/>
</div>
<div class="col-xs-7">
<span id="details-0-loginName-prompt">【登录账号只能由不超过64位的英文字母或者数字字符或者下划线组成。】</span>
......
......@@ -2,6 +2,8 @@
<%@ page import="com.baosight.xservices.xs.constants.LoginConstants" %>
<%@ page import="org.apache.commons.lang.StringUtils" %>
<%@ page import="com.baosight.xservices.xs.util.UserSession" %>
<%@ page import="com.baosight.hpjx.core.security.UserSessionUtils" %>
<%@ page import="com.baosight.hpjx.hp.pz.tools.HPPZTools" %>
<!DOCTYPE html>
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
......@@ -18,7 +20,9 @@
} else {
request.setAttribute("passwordTip", "密码由不超过255位的英文字母或者数字字符或下划线组成。");
}
String username = UserSession.getUser().getUsername();
String companyCode = UserSessionUtils.getCompanyCode();
String loginPrefix = StringUtils.isBlank(companyCode) ? "" : HPPZTools.getPz009(companyCode).getLoginPrefix();
String username = UserSession.getUser().getUsername();
String passwordRegex = StringUtils.defaultIfEmpty(PlatApplicationContext.getProperty("xservices.security.checkpassword.regex"), "^(?=.*?[a-zA-Z])(?=.*?[0-9]).{1,}$");
String passwordDesc = StringUtils.defaultIfEmpty(PlatApplicationContext.getProperty("xservices.security.checkpassword.desc"), "密码必须包含英文及数字");
String loginPublicKey = LoginConstants.loginRsaPublicKey;
......@@ -29,6 +33,7 @@
<c:set var="login_PublicKey" value="<%=loginPublicKey%>"/>
<c:set var="crypto_PasswordEnable" value="<%=cryptoPasswordEnable%>"/>
<c:set var="username" value="<%=username%>"/>
<c:set var="loginPrefix" value="<%=loginPrefix%>"/>
<script>
let username = "${username}"
</script>
......@@ -253,12 +258,15 @@
</div>
<div class="col-xs-3">
<EF:EFInput cname="登录账号" ename="details-0-loginName"
data-regex="/^[_a-zA-Z0-9]{1,64}$/" value=""
data-regex="/^[_a-zA-Z0-9]{1,64}$/"
data-errorPrompt="对不起,登录账号只能是不超过64位的英文字母或者数字字符或下划线"
validateGroupName="group1" required="required" inline="true"/>
validateGroupName="group1" required="required" inline="true"
value="${loginPrefix}"
oninput="this.value='${loginPrefix}' + this.value.slice(this.value.indexOf('${loginPrefix}')+('${loginPrefix}'.length));"/>
</div>
<div class="col-xs-7">
<span id="details-0-loginName-prompt">【登录账号只能由不超过64位的英文字母或者数字字符或者下划线组成。】</span>
<span id="details-0-loginName-prompt">【登录账号只能由不超过64位的英文字母或者数字字符或者下划线组成。】</span><br/>
<span id="details-0-loginName-prompt1" style="color: red">【登录账号由"固定前缀+自定义输入值"组成。】</span>
</div>
</div>
</br>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment