|
@@ -4,27 +4,38 @@
|
|
|
*/
|
|
|
package com.tofly.fees.meterreadingmgt.controller;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.tofly.common.core.entity.ResultRespone;
|
|
|
+import com.tofly.common.core.util.Convert;
|
|
|
import com.tofly.common.log.annotation.ToFlyAppLog;
|
|
|
import com.tofly.fees.common.BaseController;
|
|
|
+import com.tofly.fees.common.annotate.requestPostSingle.RequestPostSingleParam;
|
|
|
import com.tofly.fees.common.dbhelper.DbHelper;
|
|
|
-import com.tofly.fees.common.model.CollectionData;
|
|
|
+import com.tofly.fees.common.dbhelper.LogHelper;
|
|
|
+import com.tofly.fees.common.dbhelper.PageSortHelper;
|
|
|
+import com.tofly.fees.common.dbhelper.ProduceSql;
|
|
|
+import com.tofly.fees.common.util.NumberUtils;
|
|
|
+import com.tofly.fees.meterprofilemgt.entity.DaMeter;
|
|
|
+import com.tofly.fees.meterprofilemgt.service.DaMeterService;
|
|
|
import com.tofly.fees.meterreadingmgt.entity.BwMeterReadPlan;
|
|
|
import com.tofly.fees.meterreadingmgt.mapper.BwMeterReadPlanMapper;
|
|
|
import com.tofly.fees.meterreadingmgt.service.IBwMeterReadPlanService;
|
|
|
-import io.swagger.annotations.*;
|
|
|
+import io.swagger.annotations.Api;
|
|
|
+import io.swagger.annotations.ApiImplicitParam;
|
|
|
+import io.swagger.annotations.ApiImplicitParams;
|
|
|
+import io.swagger.annotations.ApiOperation;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.web.bind.annotation.*;
|
|
|
+import org.apache.commons.lang.StringUtils;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
+import org.springframework.web.bind.annotation.PostMapping;
|
|
|
+import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
+import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
-import javax.validation.Valid;
|
|
|
import java.math.BigDecimal;
|
|
|
-import java.util.*;
|
|
|
-import java.util.stream.Collectors;
|
|
|
-
|
|
|
-import static com.tofly.fees.common.ControllerConstants.*;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
|
|
|
* 抄表计划_抄表录入
|
|
@@ -34,188 +45,182 @@ import static com.tofly.fees.common.ControllerConstants.*;
|
|
|
*/
|
|
|
@RestController
|
|
|
@AllArgsConstructor
|
|
|
-@RequestMapping("/bwmeterreadplan")
|
|
|
-@Api(tags = "抄表计划_抄表录入接口")
|
|
|
+@RequestMapping("/api/bwmeterreadplan")
|
|
|
+@Api(tags = "抄表管理-抄表录入接口")
|
|
|
public class BwMeterReadPlanController extends BaseController {
|
|
|
|
|
|
private final IBwMeterReadPlanService bwMeterReadPlanService;
|
|
|
+ private final BwMeterReadPlanMapper bwMeterReadPlanMapper;
|
|
|
|
|
|
-
|
|
|
- @Autowired
|
|
|
- BwMeterReadPlanMapper bwMeterReadPlanMapper;
|
|
|
-
|
|
|
-
|
|
|
- @GetMapping("/page")
|
|
|
- @ApiOperation(value = "分页查询")
|
|
|
- public ResultRespone selBwMeterReadPlanPage(@ApiParam(value = PAGE_SIZE_DESCRIPTION, required = true)
|
|
|
- @RequestParam(value = PAGE_SIZE_PARA_NAME) int pageSize,
|
|
|
- @ApiParam(value = PAGE_NUMBER_DESCRIPTION, required = true)
|
|
|
- @RequestParam(value = PAGE_NUMBER_PARA_NAME) int page,
|
|
|
- @ApiParam(value = "抄表人员(模糊查询)")
|
|
|
- @RequestParam String customerName,
|
|
|
- @ApiParam(value = "抄表状态 (1:已抄表 0未抄表)")
|
|
|
- @RequestParam String mrFlag,
|
|
|
- @ApiParam(value = "所属抄表册[0未分配抄表册用户]")
|
|
|
- @RequestParam String mrBook,
|
|
|
- @ApiParam(value = SORT_PROPERTY_DESCRIPTION, allowableValues = "XXX")
|
|
|
- @RequestParam(required = false) String sortProperty,
|
|
|
- @ApiParam(value = SORT_ORDER_DESCRIPTION, allowableValues = SORT_ORDER_ALLOWABLE_VALUES)
|
|
|
- @RequestParam(required = false) String sortOrder) {
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- Page<HashMap<String, Object>> pg = new Page<HashMap<String, Object>>(page, pageSize);
|
|
|
-
|
|
|
- IPage<List<HashMap<String, Object>>> newPage = bwMeterReadPlanMapper.selMeterReadList(pg, customerName, mrFlag, mrBook);
|
|
|
-
|
|
|
- CollectionData<List<HashMap<String, Object>>> m = new CollectionData<>(newPage.getRecords().stream().collect(
|
|
|
- Collectors.toList()
|
|
|
- ), newPage.getTotal());
|
|
|
-
|
|
|
- return ResultRespone.success(m);
|
|
|
- }
|
|
|
-
|
|
|
+ private final DaMeterService daMeterService;
|
|
|
|
|
|
|
|
|
- * 通过id查询抄表计划_抄表录入
|
|
|
- *
|
|
|
- * @param customerNo id
|
|
|
- * @return ResultRespone
|
|
|
+ * 抄表录入查询列表数据
|
|
|
*/
|
|
|
- @GetMapping("/{customerNo}")
|
|
|
- @ApiOperation(value = "通过ID查询")
|
|
|
+ @PostMapping("/page")
|
|
|
+ @ApiOperation(value = "分页查询")
|
|
|
@ApiImplicitParams({
|
|
|
- @ApiImplicitParam(name = "customerNo", value = "ID", required = true, dataType = "BigDecimal")
|
|
|
+ @ApiImplicitParam(name = "companyBranch", value = "公司", dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "mrArea", value = "片区", dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "mrBook", value = "抄表本", dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "mrOCode", value = "抄表员", dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "mrMode", value = "抄表方式", dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "mrFlag", value = "抄表状态", dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "calFlag", value = "算费状态", dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "searchText", value = "模糊查询(用户编号、姓名)", dataType = "String")
|
|
|
})
|
|
|
- public ResultRespone getById(@PathVariable("customerNo") BigDecimal customerNo) {
|
|
|
- return ResultRespone.success(bwMeterReadPlanService.getById(customerNo));
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- * 新增抄表计划_抄表录入
|
|
|
- *
|
|
|
- * @param bwMeterReadPlan 抄表计划_抄表录入
|
|
|
- * @return ResultRespone
|
|
|
- */
|
|
|
- @ToFlyAppLog(title = "新增抄表计划_抄表录入")
|
|
|
- @ApiOperation(value = "新增抄表计划_抄表录入")
|
|
|
- @PostMapping
|
|
|
- public ResultRespone save(@Valid @RequestBody BwMeterReadPlan bwMeterReadPlan) {
|
|
|
- return ResultRespone.success(bwMeterReadPlanService.save(bwMeterReadPlan));
|
|
|
+ public ResultRespone getMeterReadList(Page page, String companyBranch, String mrArea
|
|
|
+ , String mrBook, String mrOCode, String mrMode, String mrFlag, String calFlag, String searchText) {
|
|
|
+ PageSortHelper.setPageSort(page, new String[]{"mrModeName", "mrTypeName"});
|
|
|
+ IPage<Map<String, Object>> pageList = bwMeterReadPlanMapper.getMeterReadList(page, companyBranch, mrArea
|
|
|
+ , mrBook, mrOCode, mrMode, mrFlag, calFlag, searchText);
|
|
|
+ return ResultRespone.success(pageList);
|
|
|
}
|
|
|
|
|
|
|
|
|
* 修改抄表计划_抄表录入
|
|
|
*
|
|
|
- * @param bwMeterReadPlan 抄表计划_抄表录入
|
|
|
+ * @param data 抄表录入对象
|
|
|
* @return ResultRespone
|
|
|
*/
|
|
|
- @ToFlyAppLog(title = "修改抄表计划_抄表录入")
|
|
|
- @ApiOperation(value = "修改抄表计划_抄表录入")
|
|
|
- @PutMapping
|
|
|
- public ResultRespone updateById(@RequestBody BwMeterReadPlan bwMeterReadPlan) {
|
|
|
- return ResultRespone.success(bwMeterReadPlanService.updateById(bwMeterReadPlan));
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- * 通过id删除抄表计划_抄表录入
|
|
|
- *
|
|
|
- * @param customerNo id
|
|
|
- * @return ResultRespone
|
|
|
- */
|
|
|
- @ToFlyAppLog(title = "通过id删除抄表计划_抄表录入")
|
|
|
- @ApiOperation(value = "通过ID删除抄表计划_抄表录入")
|
|
|
- @ApiImplicitParams({
|
|
|
- @ApiImplicitParam(name = "customerNo", value = "ID", required = true, dataType = "BigDecimal")
|
|
|
- })
|
|
|
- @DeleteMapping("/{customerNo}")
|
|
|
- public ResultRespone removeById(@PathVariable BigDecimal customerNo) {
|
|
|
- return ResultRespone.success(bwMeterReadPlanService.removeById(customerNo));
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- * 通过id批量删除抄表计划_抄表录入
|
|
|
- *
|
|
|
- * @param ids id
|
|
|
- * @return ResultRespone
|
|
|
- */
|
|
|
- @ToFlyAppLog(title = "通过id批量删除抄表计划_抄表录入")
|
|
|
- @ApiOperation(value = "通过ID批量删除抄表计划_抄表录入")
|
|
|
- @ApiImplicitParams({
|
|
|
- @ApiImplicitParam(name = "ids", value = "批量删除,多个id以逗号隔开", required = true, dataType = "String")
|
|
|
- })
|
|
|
- @DeleteMapping("/deleteByIds")
|
|
|
- public ResultRespone removeById(String ids) {
|
|
|
- return ResultRespone.success(bwMeterReadPlanService.removeByIds(Arrays.asList(ids.split(","))));
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- *DBHelper修改用户
|
|
|
- */
|
|
|
- @ToFlyAppLog(title = "根据用户编号修改用户名称")
|
|
|
- @ApiOperation(value = "根据用户编号修改用户名称")
|
|
|
- @PostMapping("/saveName")
|
|
|
- public ResultRespone saveName(@ApiParam(value = "用户姓名", required = true)
|
|
|
- @RequestParam String name,
|
|
|
- @ApiParam(value = "用户编号", required = true)
|
|
|
- @RequestParam String no) throws Exception {
|
|
|
-
|
|
|
- DbHelper db = DbHelper.getDbHelper();
|
|
|
- int row = db.executeCmd("update tf_ywys_da_customer set customer_name='" + name + "' where customer_no='" + no + "'");
|
|
|
- String msg = "修改成功";
|
|
|
- if (!(row > 0)) {
|
|
|
- msg = "修改失败";
|
|
|
+ @ToFlyAppLog(title = "保存抄表录入")
|
|
|
+ @ApiOperation(value = "保存抄表录入")
|
|
|
+ @PostMapping("/save")
|
|
|
+ public ResultRespone updateById(@RequestPostSingleParam("data") JSONObject data) throws Exception {
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ int v_cblx = Convert.toInt(data.get("cblx"));
|
|
|
+
|
|
|
+ double v_sblc = Convert.toDouble(data.get("sblc"));
|
|
|
+ String czrybm = Convert.toStr(data.get("czrybm"));
|
|
|
+ String czryxm = Convert.toStr(data.get("czryxm"));
|
|
|
+
|
|
|
+ BwMeterReadPlan bwMeterReadPlan = new BwMeterReadPlan();
|
|
|
+ bwMeterReadPlan.setMrType(Convert.toBigDecimal(v_cblx));
|
|
|
+ bwMeterReadPlan.setThisReading(Convert.toBigDecimal(data.get("bcds")));
|
|
|
+ bwMeterReadPlan.setLastReading(Convert.toBigDecimal(data.get("scds")));
|
|
|
+ bwMeterReadPlan.setJjl(Convert.toBigDecimal(data.get("jjl")));
|
|
|
+ bwMeterReadPlan.setOldMeterEreading(Convert.toBigDecimal(data.get("jbzd")));
|
|
|
+ bwMeterReadPlan.setNewMeterBreading(Convert.toBigDecimal(data.get("xbqd")));
|
|
|
+ bwMeterReadPlan.setRemark(Convert.toStr(data.get("bz")));
|
|
|
+ bwMeterReadPlan.setMeterCardId(data.get("cbkid").toString());
|
|
|
+ bwMeterReadPlan.setQuantity(Convert.toBigDecimal(data.get("sjsl")));
|
|
|
+ bwMeterReadPlan.setMrMode(data.get("cbfs").toString());
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ int sjsl = 0;
|
|
|
+ if (v_cblx == 0) {
|
|
|
+
|
|
|
+ sjsl = Convert.toInt(bwMeterReadPlan.getThisReading()
|
|
|
+ .subtract(bwMeterReadPlan.getLastReading())
|
|
|
+ .add(bwMeterReadPlan.getJjl()));
|
|
|
+ } else if (v_cblx == -1) {
|
|
|
+
|
|
|
+ sjsl = Math.abs(Convert.toInt(
|
|
|
+ bwMeterReadPlan.getLastReading().subtract(bwMeterReadPlan.getThisReading())))
|
|
|
+ + Convert.toInt(bwMeterReadPlan.getJjl());
|
|
|
+ } else if (v_cblx == -2) {
|
|
|
+
|
|
|
+ double sbmdValue = Math.pow(10, v_sblc) - 1;
|
|
|
+ sjsl = Math.abs(Convert.toInt(sbmdValue)
|
|
|
+ - Convert.toInt(bwMeterReadPlan.getLastReading())
|
|
|
+ + Convert.toInt(bwMeterReadPlan.getThisReading()))
|
|
|
+ + Convert.toInt(bwMeterReadPlan.getJjl());
|
|
|
+ } else if (v_cblx == -3) {
|
|
|
+
|
|
|
+ sjsl = Convert.toInt(bwMeterReadPlan.getOldMeterEreading()
|
|
|
+ .subtract(bwMeterReadPlan.getLastReading()))
|
|
|
+ + Convert.toInt(bwMeterReadPlan.getThisReading()
|
|
|
+ .subtract(bwMeterReadPlan.getNewMeterBreading()));
|
|
|
}
|
|
|
- return ResultRespone.success(true, msg);
|
|
|
- }
|
|
|
|
|
|
-
|
|
|
- *DBHelper修改用户
|
|
|
- */
|
|
|
- @ToFlyAppLog(title = "测试接口")
|
|
|
- @ApiOperation(value = "测试接口")
|
|
|
- @PostMapping("/saveName2")
|
|
|
- public ResultRespone saveName2(@ApiParam(value = "用户姓名", required = true)
|
|
|
- @RequestParam String name,
|
|
|
- @ApiParam(value = "用户编号", required = true)
|
|
|
- @RequestParam String no) throws Exception {
|
|
|
-
|
|
|
- DbHelper db = DbHelper.getDbHelper();
|
|
|
- int row = db.executeCmd("update tf_ywys_da_customer set customer_name='" + name + "' where customer_no='" + no + "'");
|
|
|
- String msg = "修改成功";
|
|
|
- if (!(row > 0)) {
|
|
|
- msg = "修改失败";
|
|
|
+ if (bwMeterReadPlan.getMeterCardId().equals("")) {
|
|
|
+ return ResultRespone.failed(false, "用户编号不能为空!");
|
|
|
}
|
|
|
- return ResultRespone.success(true, msg);
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- *DBHlper删除用户
|
|
|
- */
|
|
|
- @ToFlyAppLog(title = "根据用户编号删除用户")
|
|
|
- @ApiOperation(value = "根据用户编号删除用户")
|
|
|
- @DeleteMapping("/delCustomerByNo")
|
|
|
- public ResultRespone deleteByNo(
|
|
|
- @ApiParam(value = "用户编号", required = true)
|
|
|
- @RequestParam String no) throws Exception {
|
|
|
+ if (Convert.toInt(bwMeterReadPlan.getQuantity()) != sjsl) {
|
|
|
+ return ResultRespone.failed(false, "实际水量与计算不符!");
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
+
|
|
|
DbHelper db = DbHelper.getDbHelper();
|
|
|
|
|
|
- db.clearTransactionSql();
|
|
|
- db.addTransactionSql("delete from tf_ywys_da_meter where customer_no='" + no + "'");
|
|
|
- db.addTransactionSql("delete from Tf_Ywys_Da_Customer where customer_no='" + no + "'");
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ Date nowDate = new Date();
|
|
|
+ bwMeterReadPlan.setMrDate(nowDate);
|
|
|
+ bwMeterReadPlan.setInputOcode(czrybm);
|
|
|
+ bwMeterReadPlan.setInputOname(czryxm);
|
|
|
+ bwMeterReadPlan.setInputDate(nowDate);
|
|
|
+ bwMeterReadPlan.setMrFlag("1");
|
|
|
+ bwMeterReadPlan.setMrDataSource("0");
|
|
|
+ bwMeterReadPlan.setMrTimes(new BigDecimal(1));
|
|
|
+
|
|
|
+
|
|
|
+ bwMeterReadPlan.setAuditFlag("1");
|
|
|
+ bwMeterReadPlan.setAuditOcode(czrybm);
|
|
|
+ bwMeterReadPlan.setAuditOname(czryxm);
|
|
|
+ bwMeterReadPlan.setAuditDate(nowDate);
|
|
|
+ bwMeterReadPlan.setAuditSuggestion("自动审核");
|
|
|
+
|
|
|
+
|
|
|
+ db.addTransactionSql(ProduceSql.getUpdateSql(bwMeterReadPlan
|
|
|
+ , "meter_card_id='" + bwMeterReadPlan.getMeterCardId() + "'"));
|
|
|
+
|
|
|
+ String meterCardId = bwMeterReadPlan.getMeterCardId();
|
|
|
+ if (v_cblx == -2) {
|
|
|
+
|
|
|
+ DaMeter daMeter = daMeterService.getById(meterCardId);
|
|
|
+ if (Convert.toDouble(daMeter.getMeterRange()) != v_sblc) {
|
|
|
+
|
|
|
+ DaMeter daMeterNew = new DaMeter();
|
|
|
+ daMeterNew.setMeterRange(NumberUtils.toString(v_sblc));
|
|
|
+ daMeterNew.setOperatorCode(czrybm);
|
|
|
+ daMeterNew.setOperatorName(czryxm);
|
|
|
+ daMeterNew.setOperatorDatetime(nowDate);
|
|
|
+ db.addTransactionSql(ProduceSql.getUpdateSql(daMeterNew, "METER_CARD_ID='" + meterCardId + "'"));
|
|
|
+
|
|
|
+
|
|
|
+ String strLog = LogHelper.getModifySQL(daMeterNew, "METER_CARD_ID='" + meterCardId + "'", "抄表录入[水表满度,修改量程]");
|
|
|
+ if (!StringUtils.isBlank(strLog)) {
|
|
|
+ db.addTransactionSql(strLog);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ } else if (v_cblx == -3) {
|
|
|
+
|
|
|
+ String strLog = LogHelper.getModifySQL(bwMeterReadPlan, "METER_CARD_ID='" + meterCardId + "'", "抄表录入-洗换表");
|
|
|
+ if (!StringUtils.isBlank(strLog)) {
|
|
|
+ db.addTransactionSql(strLog);
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- String msg = "删除用户成功";
|
|
|
- if (!(db.executeTransaction())) {
|
|
|
- msg = "删除用户失败";
|
|
|
+ if (Convert.toBool(data.get("xgds"))) {
|
|
|
+
|
|
|
+ BwMeterReadPlan bwMeterReadPlanOld = bwMeterReadPlanService.getById(meterCardId);
|
|
|
+ BwMeterReadPlan bwMeterReadPlanNew = new BwMeterReadPlan();
|
|
|
+
|
|
|
+
|
|
|
+ BeanUtils.copyProperties(bwMeterReadPlanOld, bwMeterReadPlanNew);
|
|
|
+ bwMeterReadPlanNew.setLastReading(bwMeterReadPlan.getLastReading());
|
|
|
+
|
|
|
+
|
|
|
+ if (!bwMeterReadPlanOld.getLastReading().equals(bwMeterReadPlanNew.getLastReading())) {
|
|
|
+
|
|
|
+ String strLog = LogHelper.getModifySQL(bwMeterReadPlanOld, bwMeterReadPlanNew, "抄表录入-修改底数");
|
|
|
+ if (!StringUtils.isBlank(strLog)) {
|
|
|
+ db.addTransactionSql(strLog);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ boolean isFlag = db.executeTransaction();
|
|
|
+ if (isFlag) {
|
|
|
+ return ResultRespone.success(true, "保存成功!");
|
|
|
+ } else {
|
|
|
+ return ResultRespone.failed(false, "更新失败!");
|
|
|
}
|
|
|
- return ResultRespone.success(true, msg);
|
|
|
+
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
}
|