Browse Source

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

zouxuan 4 years ago
parent
commit
1acee4fa6c

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SubjectChangeDao.java

@@ -5,6 +5,7 @@ import com.ym.mec.common.dal.BaseDAO;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
+import java.util.Map;
 
 public interface SubjectChangeDao extends BaseDAO<Integer, SubjectChange> {
 
@@ -28,8 +29,16 @@ public interface SubjectChangeDao extends BaseDAO<Integer, SubjectChange> {
 
     /**
      * 获取待支付的的声部更换列表
+     *
      * @param musicGroupId
      * @return
      */
     List<SubjectChange> getMusicGroupWaitPay(@Param("musicGroupId") String musicGroupId);
+
+    /**
+     * 获取声部更换列表
+     * @param params
+     * @return
+     */
+    List<SubjectChange> getPageList(Map<String, Object> params);
 }

+ 25 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SellOrder.java

@@ -12,6 +12,15 @@ public class SellOrder {
     private Integer id;
 
     /**
+     * 教务id
+     */
+    @ApiModelProperty(value="教务id")
+    private Integer eduTeacherId;
+
+    @ApiModelProperty(value="教务老师")
+    private String eduTeacher;
+
+    /**
     * 分部id
     */
     @ApiModelProperty(value="分部id")
@@ -342,4 +351,20 @@ public class SellOrder {
     public void setSchoolName(String schoolName) {
         this.schoolName = schoolName;
     }
+
+    public Integer getEduTeacherId() {
+        return eduTeacherId;
+    }
+
+    public void setEduTeacherId(Integer eduTeacherId) {
+        this.eduTeacherId = eduTeacherId;
+    }
+
+    public String getEduTeacher() {
+        return eduTeacher;
+    }
+
+    public void setEduTeacher(String eduTeacher) {
+        this.eduTeacher = eduTeacher;
+    }
 }

+ 22 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SubjectChange.java

@@ -16,6 +16,9 @@ public class SubjectChange {
     @ApiModelProperty(value="合作单位id")
     private Integer cooperationOrganId;
 
+    @ApiModelProperty(value="合作单位名称")
+    private String cooperationOrganName;
+
     @ApiModelProperty(value="学生id")
     private Integer studentId;
 
@@ -24,6 +27,9 @@ public class SubjectChange {
     @ApiModelProperty(value="分部id")
     private Integer organId;
 
+    @ApiModelProperty(value="分部名称")
+    private String organName;
+
     @ApiModelProperty(value="乐团id")
     private String musicGroupId;
 
@@ -450,4 +456,20 @@ public class SubjectChange {
     public void setChangeCost(BigDecimal changeCost) {
         this.changeCost = changeCost;
     }
+
+    public String getCooperationOrganName() {
+        return cooperationOrganName;
+    }
+
+    public void setCooperationOrganName(String cooperationOrganName) {
+        this.cooperationOrganName = cooperationOrganName;
+    }
+
+    public String getOrganName() {
+        return organName;
+    }
+
+    public void setOrganName(String organName) {
+        this.organName = organName;
+    }
 }

+ 55 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/SubjectChangeQueryInfo.java

@@ -0,0 +1,55 @@
+package com.ym.mec.biz.dal.page;
+
+import com.ym.mec.common.page.QueryInfo;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.util.Date;
+
+public class SubjectChangeQueryInfo extends QueryInfo {
+
+    private String organIdList;
+
+
+    @ApiModelProperty(value = "合作单位id",required = false)
+    private Integer cooperationOrganId;
+
+    @ApiModelProperty(value = "开始时间",required = false)
+    private Date startTime;
+
+    @ApiModelProperty(value = "结束时间",required = false)
+    private Date endTime;
+
+
+    public String getOrganIdList() {
+        return organIdList;
+    }
+
+    public void setOrganIdList(String organIdList) {
+        this.organIdList = organIdList;
+    }
+
+
+    public Date getStartTime() {
+        return startTime;
+    }
+
+    public void setStartTime(Date startTime) {
+        this.startTime = startTime;
+    }
+
+    public Date getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(Date endTime) {
+        this.endTime = endTime;
+    }
+
+    public Integer getCooperationOrganId() {
+        return cooperationOrganId;
+    }
+
+    public void setCooperationOrganId(Integer cooperationOrganId) {
+        this.cooperationOrganId = cooperationOrganId;
+    }
+}

+ 16 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/SubjectChangeService.java

@@ -1,10 +1,19 @@
 package com.ym.mec.biz.service;
 
+import com.ym.mec.biz.dal.dto.StudentVisitDto;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrder;
 import com.ym.mec.biz.dal.entity.SubjectChange;
+import com.ym.mec.biz.dal.page.StudentVisitQueryInfo;
+import com.ym.mec.biz.dal.page.SubjectChangeQueryInfo;
+import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.BaseService;
+import com.ym.mec.util.collection.MapUtil;
+import com.ym.mec.util.date.DateUtil;
 
 import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 public interface SubjectChangeService extends BaseService<Integer, SubjectChange> {
@@ -49,4 +58,11 @@ public interface SubjectChangeService extends BaseService<Integer, SubjectChange
      * @param order
      */
     Boolean orderCallback(StudentPaymentOrder order);
+
+    /**
+     * 获取更换列表
+     * @param queryInfo
+     * @return
+     */
+    PageInfo<SubjectChange> getPageList(SubjectChangeQueryInfo queryInfo);
 }

+ 41 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectChangeServiceImpl.java

@@ -2,14 +2,20 @@ package com.ym.mec.biz.service.impl;
 
 import com.alibaba.fastjson.JSONObject;
 import com.ym.mec.biz.dal.dao.*;
+import com.ym.mec.biz.dal.dto.StudentVisitDto;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.*;
+import com.ym.mec.biz.dal.page.StudentVisitQueryInfo;
+import com.ym.mec.biz.dal.page.SubjectChangeQueryInfo;
 import com.ym.mec.biz.service.*;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
+import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.IdGeneratorService;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
+import com.ym.mec.util.collection.MapUtil;
+import com.ym.mec.util.date.DateUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -366,4 +372,39 @@ public class SubjectChangeServiceImpl extends BaseServiceImpl<Integer, SubjectCh
         }
         return true;
     }
+
+    @Override
+    public PageInfo<SubjectChange> getPageList(SubjectChangeQueryInfo queryInfo) {
+        if (queryInfo.getEndTime() != null) {
+            queryInfo.setEndTime(DateUtil.getLastTimeWithDay(queryInfo.getEndTime()));
+        }
+        PageInfo<SubjectChange> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+        Map<String, Object> params = new HashMap<String, Object>();
+        MapUtil.populateMap(params, queryInfo);
+
+        List<SubjectChange> dataList = new ArrayList<>();
+        int count = this.findCount(params);
+
+        if (count > 0) {
+            pageInfo.setTotal(count);
+            params.put("offset", pageInfo.getOffset());
+            dataList = subjectChangeDao.getPageList(params);
+            for (SubjectChange subjectChange : dataList) {
+                if (subjectChange.getOriginalMusical() != null) {
+                    subjectChange.setOriginalMusicalGoods(goodsDao.get(subjectChange.getOriginalMusical()));
+                }
+                if (subjectChange.getOriginalAccessories() != null) {
+                    subjectChange.setOriginalAccessoriesGoods(goodsDao.findGoodsByIds(subjectChange.getOriginalAccessories()));
+                }
+                if (subjectChange.getChangeMusical() != null) {
+                    subjectChange.setChangeMusicalGoods(goodsDao.get(subjectChange.getChangeMusical()));
+                }
+                if (subjectChange.getChangeAccessories() != null) {
+                    subjectChange.setChangeAccessoriesGoods(goodsDao.findGoodsByIds(subjectChange.getChangeAccessories()));
+                }
+            }
+        }
+        pageInfo.setRows(dataList);
+        return pageInfo;
+    }
 }

+ 14 - 4
mec-biz/src/main/resources/config/mybatis/SellOrderMapper.xml

@@ -6,6 +6,8 @@
         <!--@Table sell_order-->
         <id column="id_" property="id"/>
         <result column="organ_id_" property="organId"/>
+        <result column="edu_teacher_id_" property="eduTeacherId"/>
+        <result column="eduTeacher" property="eduTeacher"/>
         <result column="cooperation_organ_id_" property="cooperationOrganId"/>
         <result column="school_name_" property="schoolName"/>
         <result column="trans_no_" property="transNo"/>
@@ -33,7 +35,8 @@
     </resultMap>
     <sql id="Base_Column_List">
         <!--@mbg.generated-->
-        id_, organ_id_, cooperation_organ_id_, trans_no_,order_id_, order_no_, expect_amount_, actual_amount_,
+        id_, edu_teacher_id_,organ_id_, cooperation_organ_id_, trans_no_,order_id_, order_no_, expect_amount_,
+        actual_amount_,
         balance_amount_, sell_cost_, sell_cost2_, type_, goods_id_,goods_name_, num_, user_id_, payment_channel_,
         mer_no_, sell_time_, create_ime_, update_time_
     </sql>
@@ -52,11 +55,13 @@
     <insert id="insert" keyColumn="id_" keyProperty="id" parameterType="com.ym.mec.biz.dal.entity.SellOrder"
             useGeneratedKeys="true">
         <!--@mbg.generated-->
-        insert into sell_order (organ_id_, cooperation_organ_id_, trans_no_,order_id_, order_no_, expect_amount_,
+        insert into sell_order (edu_teacher_id_,organ_id_, cooperation_organ_id_, trans_no_,order_id_, order_no_,
+        expect_amount_,
         actual_amount_,
         balance_amount_, type_, goods_id_,goods_name_, sell_cost_, sell_cost2_, num_, user_id_, payment_channel_,
         mer_no_, sell_time_, create_ime_, update_time_)
-        values (#{organId}, #{cooperationOrganId}, #{transNo}, #{orderNo},#{orderId}, #{expectAmount}, #{actualAmount},
+        values (#{eduTeacherId},#{organId}, #{cooperationOrganId}, #{transNo}, #{orderNo},#{orderId}, #{expectAmount},
+        #{actualAmount},
         #{balanceAmount}, #{type}, #{goodsId}, #{goodsName}, #{sellCost}, #{sellCost2}, #{num}, #{userId},
         #{paymentChannel},
         #{merNo}, #{sellTime}, #{createIme}, #{updateTime})
@@ -65,6 +70,9 @@
         <!--@mbg.generated-->
         update sell_order
         <set>
+            <if test="eduTeacherId != null">
+                edu_teacher_id_ = #{eduTeacherId},
+            </if>
             <if test="organId != null">
                 organ_id_ = #{organId},
             </if>
@@ -146,10 +154,12 @@
 
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="SellOrder" parameterType="map">
-        SELECT so.*,su.username_ user_name_,su.phone_,o.name_ organ_name_,co.name_ school_name_ FROM sell_order so
+        SELECT so.*,su.username_ user_name_,su.phone_,o.name_ organ_name_,co.name_ school_name_,t.real_name_ eduTeacher
+        FROM sell_order so
         LEFT JOIN sys_user su ON so.user_id_ = su.id_
         LEFT JOIN organization o ON o.id_ = so.organ_id_
         LEFT JOIN cooperation_organ co ON co.id_= so.cooperation_organ_id_
+        LEFT JOIN sys_user t ON t.id_ = so.edu_teacher_id_
         <include refid="queryPageSql"/>
         ORDER BY so.create_ime_ DESC
         <include refid="global.limit"/>

+ 45 - 0
mec-biz/src/main/resources/config/mybatis/SubjectChangeMapper.xml

@@ -8,7 +8,9 @@
         <result column="student_id_" property="studentId"/>
         <result column="studentName" property="studentName"/>
         <result column="organ_id_" property="organId"/>
+        <result column="organName" property="organName"/>
         <result column="cooperation_organ_id_" property="cooperationOrganId"/>
+        <result column="cooperationOrganName" property="cooperationOrganName"/>
         <result column="music_group_id_" property="musicGroupId"/>
         <result column="original_course_fee_" property="originalCourseFee"/>
         <result column="original_musical_" property="originalMusical"/>
@@ -182,4 +184,47 @@
         WHERE music_group_id_ = #{musicGroupId}
           AND status_ = 0
     </select>
+
+    <select id="queryPage" resultMap="SubjectChange">
+        SELECT * FROM subject_change sc
+        <include refid="queryPageSql"/>
+        ORDER BY sc.id_ DESC
+        <include refid="global.limit"/>
+    </select>
+
+    <select id="getPageList" resultMap="SubjectChange">
+        SELECT sc.*,s.username_ studentName,o.name_ organName,co.name_ cooperationOrganName FROM
+        subject_change sc
+        LEFT JOIN sys_user s ON sc.student_id_ = s.id_
+        LEFT JOIN organization o ON sc.organ_id_ = o.id_
+        LEFT JOIN cooperation_organ co ON sc.cooperation_organ_id_ = co.id_
+        <include refid="queryPageSql"/>
+        ORDER BY sc.sell_time_ DESC
+        <include refid="global.limit"/>
+    </select>
+    <sql id="queryPageSql">
+        <where>
+            <if test="search != null and search != ''">
+                AND (sc.order_no_ = #{search} OR sc.trans_no_ = #{search})
+            </if>
+            <if test="organIdList != null and organIdList != ''">
+                AND FIND_IN_SET(sc.organ_id_,#{organIdList})
+            </if>
+            <if test="cooperationOrganId != null">
+                AND sc.cooperation_organ_id_ = #{cooperationOrganId}
+            </if>
+            <if test="startTime != null">
+                AND sc.sell_time_ >= #{startTime}
+            </if>
+            <if test="endTime != null">
+                AND sc.sell_time_ &lt;= #{endTime}
+            </if>
+        </where>
+    </sql>
+    <select id="queryCount" resultType="int">
+        SELECT COUNT(*) FROM subject_change sv
+        LEFT JOIN sys_user t ON sc.teacher_id_ = t.id_
+        LEFT JOIN sys_user s ON s.id_ = sc.student_id_
+        <include refid="queryPageSql"/>
+    </select>
 </mapper>

+ 2 - 1
mec-student/src/main/java/com/ym/mec/student/config/ResourceServerConfig.java

@@ -38,7 +38,8 @@ public class ResourceServerConfig extends ResourceServerConfigurerAdapter {
 				"/systemDate/query",
 				"/organization/getOrgans",
 				"/repair/addGoodsSellOrder",
-				"/repair/getStudentGoodsOrder").permitAll().anyRequest().authenticated().and().httpBasic();
+				"/repair/getStudentGoodsOrder",
+				"/contracts/queryProduceContract").permitAll().anyRequest().authenticated().and().httpBasic();
 	}
 
 	@Override

+ 8 - 5
mec-student/src/main/java/com/ym/mec/student/controller/ContractsController.java

@@ -81,11 +81,14 @@ public class ContractsController extends BaseController {
 
 	@ApiOperation("查询产品协议")
 	@GetMapping(value = "queryProduceContract")
-	public Object queryProduceContract(String musicGroupId) {
-		SysUser sysUser = sysUserFeignService.queryUserInfo();
-		if (sysUser == null) {
-			return failed("获取用户信息失败");
+	public Object queryProduceContract(Integer userId, String musicGroupId) {
+		if(Objects.isNull(userId)){
+			SysUser sysUser = sysUserFeignService.queryUserInfo();
+			if (sysUser == null) {
+				return failed("获取用户信息失败");
+			}
+			userId = sysUser.getId();
 		}
-		return succeed(contractService.queryProductContract(sysUser.getId(),musicGroupId));
+		return succeed(contractService.queryProductContract(userId,musicGroupId));
 	}
 }

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/config/ResourceServerConfig.java

@@ -34,7 +34,7 @@ public class ResourceServerConfig extends ResourceServerConfigurerAdapter {
 				.antMatchers("/task/**")
 				.hasIpAddress("0.0.0.0/0")
 				.antMatchers("/v2/api-docs", "/classGroup/highClassGroups", "/code/*", "/api/*", "/appVersionInfo/queryByPlatform", "/eduDegree/*",
-						"/uploadFile").permitAll().anyRequest().authenticated().and().httpBasic();
+						"/uploadFile", "/eduContracts/queryProduceContract").permitAll().anyRequest().authenticated().and().httpBasic();
 	}
 
 	@Override

+ 38 - 9
mec-web/src/main/java/com/ym/mec/web/controller/SubjectChangeController.java

@@ -1,14 +1,23 @@
 package com.ym.mec.web.controller;
 
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.dao.EmployeeDao;
 import com.ym.mec.biz.dal.dto.MusicGroupSubjectGoodsAndInfoDto;
 import com.ym.mec.biz.dal.dto.StudentAddDto;
+import com.ym.mec.biz.dal.entity.Employee;
+import com.ym.mec.biz.dal.entity.SellOrder;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
 import com.ym.mec.biz.dal.entity.SubjectChange;
+import com.ym.mec.biz.dal.page.SellOrderQueryInfo;
+import com.ym.mec.biz.dal.page.SubjectChangeQueryInfo;
 import com.ym.mec.biz.service.MusicGroupSubjectPlanService;
 import com.ym.mec.biz.service.StudentRegistrationService;
 import com.ym.mec.biz.service.SubjectChangeService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
+import com.ym.mec.common.page.PageInfo;
+import com.ym.mec.util.date.DateUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -18,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.Arrays;
 import java.util.List;
 
 @RequestMapping("subjectChange")
@@ -31,17 +41,36 @@ public class SubjectChangeController extends BaseController {
     private MusicGroupSubjectPlanService musicGroupSubjectPlanService;
     @Autowired
     private SubjectChangeService subjectChangeService;
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
+    @Autowired
+    private EmployeeDao employeeDao;
 
-    @ApiOperation(value = "获取学生报名缴费详情")
-    @GetMapping("/getApplyDetail")
-    @PreAuthorize("@pcs.hasPermissions('subjectChange/getApplyDetail')")
-    @ApiImplicitParams({@ApiImplicitParam(name = "studentId", value = "学生编号", required = true, dataType = "Integer"),
-            @ApiImplicitParam(name = "musicGroupId", value = "乐团编号", required = true, dataType = "String")})
-    public HttpResponseResult<List<StudentPaymentOrderDetail>> getApplyDetail(Integer studentId, String musicGroupId) {
-        if (studentId == null || StringUtils.isEmpty(musicGroupId)) {
-            return failed("参数校验异常");
+    @ApiOperation("销售列表")
+    @GetMapping(value = "/queryPage")
+    @PreAuthorize("@pcs.hasPermissions('sellOrder/queryPage')")
+    public HttpResponseResult<PageInfo<SubjectChange>> queryPage(SubjectChangeQueryInfo queryInfo) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            return failed("用户信息获取失败");
+        }
+        if (!sysUser.getIsSuperAdmin()) {
+            Employee employee = employeeDao.get(sysUser.getId());
+            if (StringUtils.isEmpty(queryInfo.getOrganIdList())) {
+                queryInfo.setOrganIdList(employee.getOrganIdList());
+            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+                return failed("用户所在分部异常");
+            } else {
+                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+                if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
+                    return failed("非法请求");
+                }
+            }
+        }
+        if (queryInfo.getEndTime() != null) {
+            queryInfo.setEndTime(DateUtil.getLastTimeWithDay(queryInfo.getEndTime()));
         }
-        return succeed(studentRegistrationService.getStudentApplyDetail(studentId, musicGroupId));
+        return succeed(subjectChangeService.getPageList(queryInfo));
     }
 
     @ApiOperation(value = "获取更换前的详情")