Merge remote-tracking branch 'origin/agreement' into agreement

master
eason.qian 7 years ago
commit d35b6af86d

@ -53,6 +53,7 @@ import com.github.miemiedev.mybatis.paginator.domain.Order;
import com.github.miemiedev.mybatis.paginator.domain.PageBounds;
import com.github.miemiedev.mybatis.paginator.domain.PageList;
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.RandomUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateFormatUtils;
@ -1339,15 +1340,33 @@ public class RetailAppServiceImp implements RetailAppService {
@Override
public JSONObject getCheckClientInfo(JSONObject device) {
JSONObject result = clientContractService.getClientContractExpire(device.getIntValue("client_id"));
JSONObject account = clientAccountMapper.findById(device.getString("account_id"));
if(PartnerRole.getRole(account.getIntValue("role")) == PartnerRole.CASHIER){
result.put("is_ordinary",true);
JSONObject config = sysConfigManager.getSysConfig();
boolean expire = result.getBoolean("rate_expire");
boolean waring = result.getBoolean("rate_waring");
if (PartnerRole.getRole(device.getIntValue("role")) == PartnerRole.CASHIER) {
result.put("is_ordinary", true);
if (!expire && waring) {
String[] key = { result.getString("expire_days") };
result.put("contract_info", editContractOrdinaryWaring(key, config.getString("sys_contract_ordinary_waring")));
}
if (expire) {
result.put("contract_info", config.getString("sys_contract_ordinary_info"));
}
return result;
} else {
result.put("contract_info", config.getString("sys_contract_info"));
result.put("is_ordinary", false);
if (!expire && waring) {
String[] key = { result.getString("expire_days") };
result.put("contract_info", editContractOrdinaryWaring(key, config.getString("sys_contract_waring")));
}
if (expire) {
result.put("contract_info", config.getString("sys_contract_info"));
}
JSONObject file = clientContractService.getOrGenerateSourceAgreement(device.getIntValue("client_id"));
result.put("file_url", file.getString("file_value"));
return result;
}
JSONObject file = clientContractService.getOrGenerateSourceAgreement(device.getIntValue("client_id"));
result.put("file_url", file.getString("file_value"));
result.put("contract_info",sysConfigManager.getSysConfig().getString("sys_contract_info"));
return result;
}
private static boolean mathchLetterorNum(String str) {
@ -1355,4 +1374,13 @@ public class RetailAppServiceImp implements RetailAppService {
return str.matches(regex);
}
private String editContractOrdinaryWaring(String[] key, String sourceStr) {
if (StringUtils.isEmpty(sourceStr) || ArrayUtils.isEmpty(key)) {
return "";
}
for (int i = 0; i < key.length; i++) {
sourceStr = sourceStr.replace("{" + i + "}", key[i]);
}
return sourceStr;
}
}

@ -47,14 +47,9 @@ public class ClientContractServiceImpl implements ClientContractService {
throw new NotFoundException("merchant not found");
}
JSONObject expireInfo = getClientContractExpire(client_id);
if(expireInfo.getBoolean("rate_waring")){
List<JSONObject> files = clientFilesMapper.findFileByClientAndType(client_id, "source_agree_file");
return files.get(0);
}
JSONObject contract = clientsContractMapper.findByClientId(client_id);
Date now = new Date();
if (contract == null || now.compareTo(contract.getDate("expiry_date")) > 0 ) {
if (contract == null || now.compareTo(contract.getDate("expiry_date")) > 0) {
try {
clientManager.getAggregateAgreeFile(client.getString("client_moniker"), null);
} catch (Exception e) {
@ -90,6 +85,10 @@ public class ClientContractServiceImpl implements ClientContractService {
@Override
@Transactional
public void confirmSourceAgreement(int client_id) {
JSONObject client = clientManager.getClientInfo(client_id);
if (client == null) {
throw new NotFoundException("merchant not found");
}
JSONObject rateExpire = getClientContractExpire(client_id);
boolean expire = rateExpire.getBoolean("rate_expire");
boolean waring = rateExpire.getBoolean("rate_waring");
@ -109,6 +108,7 @@ public class ClientContractServiceImpl implements ClientContractService {
p.remove("client_rate_id");
p.put("create_time",now);
p.put("active_time",now);
p.put("update_time",now);
p.put("expiry_time",DateUtils.addYears(now,1));
clientRateMapper.saveRate(p);
});
@ -117,12 +117,13 @@ public class ClientContractServiceImpl implements ClientContractService {
rateInfo.forEach((p)->{
p.remove("client_rate_id");
p.put("create_time",now);
p.put("update_time",now);
p.put("active_time",DateUtils.addDays(p.getDate("active_time"),1));
p.put("expiry_time",DateUtils.addYears(p.getDate("active_time"),1));
p.put("expiry_time",DateUtils.addYears(p.getDate("expiry_time"),1));
clientRateMapper.saveRate(p);
});
}
clientManager.setClientTaxInSurcharge(client.getString("client_moniker"),true);
}
@Override

Loading…
Cancel
Save