Browse Source

Merge branch 'saas_yonge' into master_saas

# Conflicts:
#	mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantInfoServiceImpl.java
yonge 3 years ago
parent
commit
3aa01e8700

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Teacher.java

@@ -119,6 +119,8 @@ public class Teacher extends SysUser {
 	private Integer lectureNum;
 	
 	private String memo;
+	
+	private String contractUrl;
 
 	private BigDecimal operatingIndex;
 	private BigDecimal serviceIndex;
@@ -390,6 +392,14 @@ public class Teacher extends SysUser {
 		this.memo = memo;
 	}
 
+	public String getContractUrl() {
+		return contractUrl;
+	}
+
+	public void setContractUrl(String contractUrl) {
+		this.contractUrl = contractUrl;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 26 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantInfoServiceImpl.java

@@ -10,11 +10,13 @@ import com.ym.mec.auth.api.entity.SysRole;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.auth.api.enums.SysUserType;
 import com.ym.mec.biz.dal.dao.OrganizationDao;
+import com.ym.mec.biz.dal.dao.TenantContractTemplateDao;
 import com.ym.mec.biz.dal.dao.TenantInfoDao;
 import com.ym.mec.biz.dal.dto.TenantConfigDto;
 import com.ym.mec.biz.dal.dto.TenantInfoDto;
 import com.ym.mec.biz.dal.dto.TenantProductInfoDto;
 import com.ym.mec.biz.dal.entity.*;
+import com.ym.mec.biz.dal.entity.TenantContractTemplate;
 import com.ym.mec.biz.dal.entity.TenantContractRecord.TenantContractRecordEnum;
 import com.ym.mec.biz.dal.enums.*;
 import com.ym.mec.biz.dal.vo.PlatformServePageVo;
@@ -108,6 +110,7 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
     @Autowired
     @Lazy
     private ContractService contractService;
+    
     @Autowired
     private SysAreaService sysAreaService;
     @Autowired
@@ -116,6 +119,8 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
     private TenantPreJoinService tenantPreJoinService;
     @Autowired
     private TenantContractRecordService tenantContractRecordService;
+    @Autowired
+    private TenantContractTemplateDao tenantContractTemplateDao;
 
     @Value("${contract.baseDir:/var/pdf}")
     private String contractBaseDir;
@@ -189,11 +194,32 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void updateTenantInfo(TenantInfoDto dto) {
+    	
         //查询机构信息
         TenantInfo tenantInfo = Optional.ofNullable(dto)
                 .map(TenantInfoDto::getId)
                 .map(this::getById)
                 .orElseThrow(() -> new BizException("未找到该机构信息,机构信息不能为空!"));
+        
+        Integer tenantId = tenantInfo.getId();
+        
+        //是否修改了机构名称或机构编码
+        if(!StringUtils.equals(dto.getTsignName(), tenantInfo.getTsignName()) || !StringUtils.equals(dto.getTsignCode(), tenantInfo.getTsignCode())){
+        	//升级机构协议版本号
+        	TenantContractTemplate tenantContractTemplate = tenantContractTemplateDao.queryLatestContractTemplate(null, null, tenantId);
+        	if(tenantContractTemplate != null){
+        		baseMapper.getLocked(tenantId);
+        		
+        		Integer maxVersion = tenantContractTemplateDao.queryMaxVersion();
+        		int version = maxVersion == null ? 1 : maxVersion + 1;
+        		
+        		tenantContractTemplate.setVersion(version);
+        		Date date = new Date();
+        		tenantContractTemplate.setUpdateTime(date);
+        		
+        		tenantContractTemplateDao.update(tenantContractTemplate);
+        	}
+        }
 
         //机构状态 1已缴费,并且 机构注册的手机号与本次修改后的手机号不同,就证明本次修改了手机号 则需要修改机构的账号信息
         if (1 == tenantInfo.getPayState() && !Objects.equals(tenantInfo.getPhone(), dto.getPhone())) {

+ 3 - 1
mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -56,6 +56,7 @@
         <result column="subject_name_" property="splitSubjectName"/>
         <result column="id_card_no_" property="idCardNo"/>
         <result column="is_settlement_salary_" property="isSettlementSalary"/>
+        <result column="contract_url_" property="contractUrl"/>
         <result column="tenant_id_" property="tenantId"/>
     </resultMap>
     
@@ -375,9 +376,10 @@
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="Teacher" parameterType="map">
         SELECT t.id_,su.real_name_,su.lock_flag_,t.subject_id_,su.phone_,t.organ_id_ teacher_organ_id_,t.organ_id_,t.is_support_extra_practice_lesson_,
-        t.job_nature_,t.demission_date_,t.formal_staff_date_,t.is_probation_period_,t.memo_,GROUP_CONCAT(s.name_) subject_name_,su.del_flag_,t.is_settlement_salary_
+        t.job_nature_,t.demission_date_,t.formal_staff_date_,t.is_probation_period_,t.memo_,GROUP_CONCAT(s.name_) subject_name_,su.del_flag_,t.is_settlement_salary_,tc.url_ contract_url_
         FROM teacher t
         LEFT JOIN sys_user su ON t.id_ = su.id_
+        left join teacher_contracts tc on tc.user_id_ = t.id_
         LEFT JOIN `subject` s ON FIND_IN_SET(s.id_,t.subject_id_)
         <include refid="queryPageMap"/>
         GROUP BY t.id_

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/TenantInfoMapper.xml

@@ -62,7 +62,7 @@
         <result column="expiry_unit_" jdbcType="VARCHAR" property="expiryUnit"/>
     </resultMap>
     
-    <select id="getLocked" resultMap="TenantInfoInfoResult">
+    <select id="getLocked" resultMap="BaseResultMap">
     	select * from tenant_info WHERE id_ = #{tenantId} for update
     </select>