新增、修改投票规则添加可对不同考核对象设置不同占比

main 43
hshansha 2 months ago
parent c2571248f5
commit ded53abc74

@ -123,27 +123,48 @@ public class KhVoteController extends BaseController {
@Transactional @Transactional
public AjaxResult add(@RequestBody KhVote khVote) { public AjaxResult add(@RequestBody KhVote khVote) {
khVoteService.insertKhVote(khVote); khVoteService.insertKhVote(khVote);
//根据评测id查询职工评测关联 职工 if(khVote.getSamePercent().equals("0")){
KhPcEmp query = new KhPcEmp(); //根据评测id查询职工评测关联 职工
query.setPcId(khVote.getPingceId()); KhPcEmp query = new KhPcEmp();
List<KhPcEmp> pcEmps = pcEmpService.selectKhPcEmpList(query); query.setPcId(khVote.getPingceId());
for (KhPcEmp pcEmp : pcEmps) { List<KhPcEmp> pcEmps = pcEmpService.selectKhPcEmpList(query);
//新增投票选项关联表 for (KhPcEmp pcEmp : pcEmps) {
KhVoteEmp voteEmp = new KhVoteEmp(); //新增投票选项关联表
voteEmp.setBkhdxId(pcEmp.getBkhdxId()); KhVoteEmp voteEmp = new KhVoteEmp();
voteEmp.setBkhdxName(pcEmp.getBkhdxName()); voteEmp.setBkhdxId(pcEmp.getBkhdxId());
voteEmp.setVoteId(khVote.getId()); voteEmp.setBkhdxName(pcEmp.getBkhdxName());
voteEmp.setVoteTitle(khVote.getVoteTitle()); voteEmp.setVoteId(khVote.getId());
voteEmp.setPercentage(khVote.getPercentage()); voteEmp.setVoteTitle(khVote.getVoteTitle());
voteEmp.setKhitemTypeid(khVote.getKhitemTypeid()); voteEmp.setPercentage(khVote.getPercentage());
if(khVote.getKhitemTypeid().equals(1L)){ voteEmp.setKhitemTypeid(khVote.getKhitemTypeid());
voteEmp.setOptionA(BigDecimal.ZERO); if(khVote.getKhitemTypeid().equals(1L)){
voteEmp.setOptionB(BigDecimal.ZERO); voteEmp.setOptionA(BigDecimal.ZERO);
voteEmp.setOptionC(BigDecimal.ZERO); voteEmp.setOptionB(BigDecimal.ZERO);
voteEmp.setOptionD(BigDecimal.ZERO); voteEmp.setOptionC(BigDecimal.ZERO);
voteEmp.setOptionD(BigDecimal.ZERO);
}
voteEmpService.insertKhVoteEmp(voteEmp);
}
}else{
for (KhVoteEmp vEmp : khVote.getVoteEmps()) {
//新增投票选项关联表
KhVoteEmp voteEmp = new KhVoteEmp();
voteEmp.setBkhdxId(vEmp.getBkhdxId());
voteEmp.setBkhdxName(vEmp.getBkhdxName());
voteEmp.setVoteId(khVote.getId());
voteEmp.setVoteTitle(khVote.getVoteTitle());
voteEmp.setPercentage(vEmp.getPercentage());
voteEmp.setKhitemTypeid(khVote.getKhitemTypeid());
if(khVote.getKhitemTypeid().equals(1L)){
voteEmp.setOptionA(BigDecimal.ZERO);
voteEmp.setOptionB(BigDecimal.ZERO);
voteEmp.setOptionC(BigDecimal.ZERO);
voteEmp.setOptionD(BigDecimal.ZERO);
}
voteEmpService.insertKhVoteEmp(voteEmp);
} }
voteEmpService.insertKhVoteEmp(voteEmp);
} }
return AjaxResult.success(); return AjaxResult.success();
} }
@ -159,10 +180,23 @@ public class KhVoteController extends BaseController {
KhVoteEmp query = new KhVoteEmp(); KhVoteEmp query = new KhVoteEmp();
query.setVoteId(khVote.getId()); query.setVoteId(khVote.getId());
List<KhVoteEmp> khVoteEmps = voteEmpService.selectKhVoteEmpList(query); List<KhVoteEmp> khVoteEmps = voteEmpService.selectKhVoteEmpList(query);
for (KhVoteEmp khVoteEmp : khVoteEmps) { if (khVote.getSamePercent().equals("0")) {
khVoteEmp.setPercentage(khVote.getPercentage()); for (KhVoteEmp khVoteEmp : khVoteEmps) {
khVoteEmp.setVoteTitle(khVote.getVoteTitle()); khVoteEmp.setPercentage(khVote.getPercentage());
voteEmpService.updateKhVoteEmp(khVoteEmp); khVoteEmp.setVoteTitle(khVote.getVoteTitle());
voteEmpService.updateKhVoteEmp(khVoteEmp);
}
}else{
//修改投票选项关联表
for (KhVoteEmp khVoteEmp : khVoteEmps) {
for (KhVoteEmp vEmp : khVote.getVoteEmps()) {
if (vEmp.getBkhdxId().equals(khVoteEmp.getBkhdxId())) {
khVoteEmp.setPercentage(vEmp.getPercentage());
}
}
khVoteEmp.setVoteTitle(khVote.getVoteTitle());
voteEmpService.updateKhVoteEmp(khVoteEmp);
}
} }
khVoteService.updateKhVote(khVote); khVoteService.updateKhVote(khVote);
return AjaxResult.success(); return AjaxResult.success();

@ -81,7 +81,32 @@ public class KhVote extends BaseEntity
* @return * @return
*/ */
private List<Long> itemIds; private List<Long> itemIds;
/**
* 使 0 1
* @return
*/
private String samePercent;
/**
* 使
* @return
*/
private List<KhVoteEmp> voteEmps;
public String getSamePercent() {
return samePercent;
}
public void setSamePercent(String samePercent) {
this.samePercent = samePercent;
}
public List<KhVoteEmp> getVoteEmps() {
return voteEmps;
}
public void setVoteEmps(List<KhVoteEmp> voteEmps) {
this.voteEmps = voteEmps;
}
public List<Long> getItemIds() { public List<Long> getItemIds() {
return itemIds; return itemIds;

@ -19,6 +19,7 @@
<result property="maxNum" column="max_num" /> <result property="maxNum" column="max_num" />
<result property="percentage" column="percentage" /> <result property="percentage" column="percentage" />
<result property="state" column="state" /> <result property="state" column="state" />
<result property="samePercent" column="same_percent" />
<result property="createBy" column="create_by" /> <result property="createBy" column="create_by" />
<result property="createTime" column="create_time" /> <result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" /> <result property="updateBy" column="update_by" />
@ -27,7 +28,7 @@
</resultMap> </resultMap>
<sql id="selectKhVoteVo"> <sql id="selectKhVoteVo">
select id, pingce_id, pingce_name, khitem_id, khitem_name, khitem_typeId, vote_items, vote_title, v_description, s_time, e_time, max_num, percentage, state, create_by, create_time, update_by, update_time, remark from kh_vote select id, pingce_id, pingce_name, khitem_id, khitem_name, khitem_typeId, vote_items, vote_title, v_description, s_time, e_time, max_num, percentage, `state`,same_percent, create_by, create_time, update_by, update_time, remark from kh_vote
</sql> </sql>
<select id="selectKhVoteList" parameterType="KhVote" resultMap="KhVoteResult"> <select id="selectKhVoteList" parameterType="KhVote" resultMap="KhVoteResult">
@ -46,6 +47,7 @@
<if test="maxNum != null "> and max_num = #{maxNum}</if> <if test="maxNum != null "> and max_num = #{maxNum}</if>
<if test="percentage != null "> and percentage = #{percentage}</if> <if test="percentage != null "> and percentage = #{percentage}</if>
<if test="state != null and state != ''"> and state = #{state}</if> <if test="state != null and state != ''"> and state = #{state}</if>
<if test="samePercent != null and samePercent != ''"> and same_percent = #{samePercent}</if>
</where> </where>
</select> </select>
@ -89,6 +91,7 @@
<if test="maxNum != null">max_num,</if> <if test="maxNum != null">max_num,</if>
<if test="percentage != null">percentage,</if> <if test="percentage != null">percentage,</if>
<if test="state != null">state,</if> <if test="state != null">state,</if>
<if test="samePercent != null">same_percent,</if>
<if test="createBy != null">create_by,</if> <if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if> <if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if> <if test="updateBy != null">update_by,</if>
@ -109,6 +112,7 @@
<if test="maxNum != null">#{maxNum},</if> <if test="maxNum != null">#{maxNum},</if>
<if test="percentage != null">#{percentage},</if> <if test="percentage != null">#{percentage},</if>
<if test="state != null">#{state},</if> <if test="state != null">#{state},</if>
<if test="samePercent != null">#{samePercent},</if>
<if test="createBy != null">#{createBy},</if> <if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if> <if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if> <if test="updateBy != null">#{updateBy},</if>
@ -133,6 +137,7 @@
<if test="maxNum != null">max_num = #{maxNum},</if> <if test="maxNum != null">max_num = #{maxNum},</if>
<if test="percentage != null">percentage = #{percentage},</if> <if test="percentage != null">percentage = #{percentage},</if>
<if test="state != null">state = #{state},</if> <if test="state != null">state = #{state},</if>
<if test="samePercent != null">same_percent = #{samePercent},</if>
<if test="createBy != null">create_by = #{createBy},</if> <if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if> <if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if> <if test="updateBy != null">update_by = #{updateBy},</if>

Loading…
Cancel
Save