Procházet zdrojové kódy

Merge remote-tracking branch 'origin/master'

ZhangWenQiang před 6 roky
rodič
revize
01d1fc0b24

+ 29 - 2
happy-boot-module-powerjob/src/main/java/org/jeecg/modules/hlgcompany/controller/HlgCompanyController.java

@@ -60,9 +60,9 @@ public class HlgCompanyController {
 									  @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
 									  HttpServletRequest req) {
 		Result<IPage<HlgCompany>> result = new Result<IPage<HlgCompany>>();
-		QueryWrapper<HlgCompany> queryWrapper = QueryGenerator.initQueryWrapper(hlgCompany, req.getParameterMap());
+		QueryWrapper<HlgCompany> queryWrapper = QueryGenerator.initQueryWrapperForRule(hlgCompany, req.getParameterMap());
 		Page<HlgCompany> page = new Page<HlgCompany>(pageNo, pageSize);
-		IPage<HlgCompany> pageList = hlgCompanyService.page(page, queryWrapper);
+		Page<HlgCompany> pageList = hlgCompanyService.pageList(page,hlgCompany, queryWrapper);
 		result.setSuccess(true);
 		result.setResult(pageList);
 		return result;
@@ -107,6 +107,32 @@ public class HlgCompanyController {
 		
 		return result;
 	}
+
+
+	 /**
+	  * 锁定/解锁 企业
+	  *
+	  * @param hlgCompany
+	  * @return
+	  */
+	 @PutMapping(value = "/lockCompany")
+	 public Result<?> lockCompany(@RequestBody HlgCompany hlgCompany) {
+		 String message = "";
+		 try {
+			 hlgCompanyService.lockCompany(hlgCompany);
+			 if (hlgCompany.getIsLock() == 1) {
+				 message = "锁定成功";
+			 } else {
+				 message = "解锁成功";
+			 }
+		 } catch (Exception e) {
+			 log.error("锁定失败", e.getMessage());
+			 return Result.error("锁定失败!");
+		 }
+		 return Result.ok(message);
+	 }
+
+
 	
 	/**
 	  *   通过id删除
@@ -115,6 +141,7 @@ public class HlgCompanyController {
 	 */
 	@DeleteMapping(value = "/delete")
 	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+       //缺少判断不允许删除,后面补上
 		try {
 			hlgCompanyService.removeById(id);
 		} catch (Exception e) {

+ 8 - 0
happy-boot-module-powerjob/src/main/java/org/jeecg/modules/hlgcompany/entity/HlgCompany.java

@@ -4,6 +4,7 @@ import java.io.Serializable;
 import java.util.Date;
 import java.math.BigDecimal;
 import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
@@ -66,6 +67,7 @@ public class HlgCompany implements Serializable {
 	@Excel(name = "数据权限", width = 15)
 	private String sysOrgCode;
 	/**是否锁定(0:否 1:是)*/
+	@Dict(dicCode = "is_lock")
 	@Excel(name = "是否锁定(0:否 1:是)", width = 15)
 	private Integer isLock;
 	/**创建时间*/
@@ -84,4 +86,10 @@ public class HlgCompany implements Serializable {
 	/**更新者*/
 	@Excel(name = "更新者", width = 15)
 	private String updateBy;
+
+	@TableField(exist = false)
+	private String createTime_begin;
+
+	@TableField(exist = false)
+	private String createTime_end;
 }

+ 4 - 0
happy-boot-module-powerjob/src/main/java/org/jeecg/modules/hlgcompany/mapper/HlgCompanyMapper.java

@@ -2,6 +2,9 @@ package org.jeecg.modules.hlgcompany.mapper;
 
 import java.util.List;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.hlgcompany.entity.HlgCompany;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -14,4 +17,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface HlgCompanyMapper extends BaseMapper<HlgCompany> {
 
+    List<HlgCompany> findList(Page<HlgCompany> pageList, @Param("hlgCompany")HlgCompany hlgCompany,@Param(Constants.WRAPPER) QueryWrapper<HlgCompany> queryWrapper);
 }

+ 141 - 0
happy-boot-module-powerjob/src/main/java/org/jeecg/modules/hlgcompany/mapper/xml/HlgCompanyMapper.xml

@@ -2,4 +2,145 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="org.jeecg.modules.hlgcompany.mapper.HlgCompanyMapper">
 
+    <sql id="hlgCompanyColumns">
+		a.id AS "id",
+		a.platform_id AS "platformId",
+		a.company_name AS "companyName",
+		a.duty_paragraph AS "dutyParagraph",
+		a.business_license AS "businessLicense",
+		a.province_code AS "provinceCode",
+		a.city_code AS "cityCode",
+		a.country_code AS "countryCode",
+		a.province_city_country AS "provinceCityCountry",
+		a.address AS "address",
+		a.contact_person AS "contactPerson",
+		a.mobile_phone AS "mobilePhone",
+		a.phone AS "phone",
+		a.sys_org_code AS "sysOrgCode",
+		a.is_lock AS "isLock",
+		a.create_time AS "createTime",
+		a.create_by AS "createBy.id",
+		a.update_time AS "updateTime",
+		a.update_by AS "updateBy.id"
+	</sql>
+
+    <sql id="hlgCompanyJoins">
+
+    </sql>
+
+
+    <select id="get" resultType="org.jeecg.modules.hlgcompany.entity.HlgCompany" >
+        SELECT
+        <include refid="hlgCompanyColumns"/>
+        FROM hlg_company a
+        <include refid="hlgCompanyJoins"/>
+        WHERE a.id = #{id}
+    </select>
+
+    <select id="findList" resultType="org.jeecg.modules.hlgcompany.entity.HlgCompany" >
+        SELECT
+        <include refid="hlgCompanyColumns"/>
+        FROM hlg_company a
+        <include refid="hlgCompanyJoins"/>
+        <where>
+
+			${ew.sqlSegment}
+            <if test="hlgCompany.companyName != null and hlgCompany.companyName != ''">
+                AND a.company_name LIKE concat('%',#{hlgCompany.companyName},'%')
+            </if>
+			<if test="hlgCompany.provinceCode != null and hlgCompany.provinceCode !=''">
+				and a.province_code = #{hlgCompany.provinceCode}
+			</if>
+			<if test="hlgCompany.cityCode != null and hlgCompany.cityCode !=''">
+				and a.city_code = #{hlgCompany.cityCode}
+			</if>
+			<if test="hlgCompany.countryCode != null and hlgCompany.countryCode !=''">
+				and a.country_code = #{hlgCompany.countryCode}
+			</if>
+            <if test="hlgCompany.createTime_begin != null and hlgCompany.createTime_end != null ">
+                AND a.create_time BETWEEN #{hlgCompany.createTime_begin} AND #{hlgCompany.createTime_end}
+            </if>
+        </where>
+		ORDER BY a.update_time DESC
+    </select>
+
+
+    <insert id="insertHlgCompany" keyProperty="id" useGeneratedKeys="true" parameterType="org.jeecg.modules.hlgcompany.entity.HlgCompany">
+		INSERT INTO hlg_company(
+			platform_id,
+			company_name,
+			duty_paragraph,
+			business_license,
+			province_code,
+			city_code,
+			country_code,
+			province_city_country,
+			address,
+			contact_person,
+			mobile_phone,
+			phone,
+			sys_org_code,
+			is_lock,
+			create_time,
+			create_by,
+			update_time,
+			update_by
+		) VALUES (
+			#{platformId},
+			#{companyName},
+			#{dutyParagraph},
+			#{businessLicense},
+			#{provinceCode},
+			#{cityCode},
+			#{countryCode},
+			#{provinceCityCountry},
+			#{address},
+			#{contactPerson},
+			#{mobilePhone},
+			#{phone},
+			#{sysOrgCode},
+			#{isLock},
+			#{createTime},
+			#{createBy.id},
+			#{updateTime},
+			#{updateBy.id}
+		)
+	</insert>
+
+    <update id="update">
+		UPDATE hlg_company SET
+			platform_id = #{platformId},
+			company_name = #{companyName},
+			duty_paragraph = #{dutyParagraph},
+			business_license = #{businessLicense},
+			province_code = #{provinceCode},
+			city_code = #{cityCode},
+			country_code = #{countryCode},
+			province_city_country = #{provinceCityCountry},
+			address = #{address},
+			contact_person = #{contactPerson},
+			mobile_phone = #{mobilePhone},
+			phone = #{phone},
+			sys_org_code = #{sysOrgCode},
+			is_lock = #{isLock},
+			create_time = #{createTime},
+			update_time = #{updateTime},
+			update_by = #{updateBy.id}
+		WHERE id = #{id}
+	</update>
+
+
+    <!--物理删除-->
+    <update id="delete">
+		DELETE FROM hlg_company
+		WHERE id = #{id}
+	</update>
+
+    <!--逻辑删除-->
+    <update id="deleteByLogic">
+		UPDATE hlg_company SET
+			del_flag = #{DEL_FLAG_DELETE}
+		WHERE id = #{id}
+	</update>
+
 </mapper>

+ 6 - 0
happy-boot-module-powerjob/src/main/java/org/jeecg/modules/hlgcompany/service/IHlgCompanyService.java

@@ -1,5 +1,7 @@
 package org.jeecg.modules.hlgcompany.service;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.jeecg.modules.hlgcompany.entity.HlgCompany;
 import com.baomidou.mybatisplus.extension.service.IService;
 
@@ -12,4 +14,8 @@ import com.baomidou.mybatisplus.extension.service.IService;
 public interface IHlgCompanyService extends IService<HlgCompany> {
 
     void saveCompany(HlgCompany hlgCompany);
+
+    Page<HlgCompany> pageList(Page<HlgCompany> page, HlgCompany hlgCompany, QueryWrapper<HlgCompany> queryWrapper);
+
+    void lockCompany(HlgCompany hlgCompany);
 }

+ 55 - 1
happy-boot-module-powerjob/src/main/java/org/jeecg/modules/hlgcompany/service/impl/HlgCompanyServiceImpl.java

@@ -1,6 +1,8 @@
 package org.jeecg.modules.hlgcompany.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import io.netty.util.internal.StringUtil;
 import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.constant.CommonConstant;
@@ -13,7 +15,9 @@ import org.jeecg.modules.hlgplatform.entity.HlgPlatform;
 import org.jeecg.modules.hlgplatform.mapper.HlgPlatformMapper;
 import org.jeecg.modules.hlgplatform.service.IHlgPlatformService;
 import org.jeecg.modules.system.entity.SysDepart;
+import org.jeecg.modules.system.entity.SysUser;
 import org.jeecg.modules.system.service.ISysDepartService;
+import org.jeecg.modules.system.service.ISysUserService;
 import org.jeecg.modules.system.service.impl.SysDepartServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -41,6 +45,14 @@ public class HlgCompanyServiceImpl extends ServiceImpl<HlgCompanyMapper, HlgComp
     private SysDepartServiceImpl sysDepartServiceImpl;
     @Resource
     private HlgPlatformMapper hlgPlatformMapper;
+    @Autowired
+    private ISysUserService sysUserService;
+
+    @Override
+    public Page<HlgCompany> pageList(Page<HlgCompany> pageList, HlgCompany hlgCompany, QueryWrapper<HlgCompany> queryWrapper) {
+        return pageList.setRecords(baseMapper.findList(pageList, hlgCompany, queryWrapper));
+    }
+
     /**
      * 新增企业信息
      *
@@ -147,5 +159,47 @@ public class HlgCompanyServiceImpl extends ServiceImpl<HlgCompanyMapper, HlgComp
         //update-end--Author:Steve  Date:20190201 for:组织机构添加数据代码调整
     }
 
-
+    @Override
+    @Transactional
+    public void lockCompany(HlgCompany hlgCompany) {
+        updateById(hlgCompany);
+        hlgCompany = this.getById(hlgCompany.getId());
+        //获取当前企业的机构code
+        String sysOrgCode = hlgCompany.getSysOrgCode();
+        //获取当前企业
+        SysDepart sysDepart = sysDepartService.getByCode(sysOrgCode);
+        //获取当前登录用户
+        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        if (hlgCompany.getIsLock() == 1) {
+            //同步sysuser和sysdepart
+            //逻辑删除当前机构
+            sysDepart.setDelFlag("1");
+            sysDepart.setUpdateTime(new Date());
+            sysDepart.setUpdateBy(sysUser.getUsername());
+            sysDepartService.updateById(sysDepart);
+            //冻结当前机构所有用户
+            List<SysUser> sysUserList = sysUserService.findListByCode(sysOrgCode);
+            for (SysUser sysUser1 : sysUserList) {
+                sysUser1.setStatus(2);
+                sysUser1.setUpdateTime(new Date());
+                sysUser1.setUpdateBy(sysUser.getUsername());
+                sysUserService.updateById(sysUser1);
+            }
+        } else {
+            //同步sysuser和sysdepart
+            //恢复当前机构
+            sysDepart.setDelFlag("0");
+            sysDepart.setUpdateTime(new Date());
+            sysDepart.setUpdateBy(sysUser.getUsername());
+            sysDepartService.updateById(sysDepart);
+            //解冻当前机构所有用户
+            List<SysUser> sysUserList = sysUserService.findListByCode(sysOrgCode);
+            for (SysUser sysUser1 : sysUserList) {
+                sysUser1.setStatus(1);
+                sysUser1.setUpdateTime(new Date());
+                sysUser1.setUpdateBy(sysUser.getUsername());
+                sysUserService.updateById(sysUser1);
+            }
+        }
+    }
 }